ModalAI Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    VOXL 2 Mini Not Detecting Cameras

    Ask your questions right here!
    3
    10
    832
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • LucaVertiqL
      LucaVertiq
      last edited by

      Hello, I'm attempting to bring up the VOXL 2 Mini for a project. I'm plugged in the hires and tracking cameras in as shown here:
      https://docs.modalai.com/voxl2-mini-image-sensors/#mdk-m0104-1-c4---hires-tracking

      voxl-version output is shown below.

      voxl2-mini:~$ voxl-version
      --------------------------------------------------------------------------------
      system-image: 1.7.1-M0104-14.1a-perf-nightly-20231025
      kernel:       #1 SMP PREEMPT Thu Oct 26 04:23:26 UTC 2023 4.19.125
      --------------------------------------------------------------------------------
      hw version:   M0104
      --------------------------------------------------------------------------------
      voxl-suite:   1.1.1
      --------------------------------------------------------------------------------
      Packages:
      Repo:  http://voxl-packages.modalai.com/ ./dists/qrb5165/sdk-1.1/binary-arm64/
      Last Updated: 2023-03-02 12:58:41
      WARNING: repo file has changed since last update,
              packages may have originated from a different repo
      List:
              libmodal-cv                 0.4.0
              libmodal-exposure           0.1.0
              libmodal-journal            0.2.2
              libmodal-json               0.4.3
              libmodal-pipe               2.9.2
              libqrb5165-io               0.4.2
              libvoxl-cci-direct          0.2.1
              libvoxl-cutils              0.1.1
              mv-voxl                     0.1-r0
              qrb5165-bind                0.1-r0
              qrb5165-dfs-server          0.2.0
              qrb5165-imu-server          1.0.0
              qrb5165-rangefinder-server  0.1.0
              qrb5165-slpi-test-sig       01-r0
              qrb5165-system-tweaks       0.2.3
              qrb5165-tflite              2.8.0-2
              voxl-bind-spektrum          0.1.0
              voxl-camera-calibration     0.5.3
              voxl-camera-server          1.8.7
              voxl-configurator           0.4.5
              voxl-cpu-monitor            0.4.7
              voxl-docker-support         1.3.0
              voxl-elrs                   0.1.3
              voxl-esc                    1.3.6
              voxl-feature-tracker        0.3.2
              voxl-flow-server            0.3.3
              voxl-gphoto2-server         0.0.10
              voxl-jpeg-turbo             2.1.3-5
              voxl-lepton-server          1.2.0
              voxl-libgphoto2             0.0.4
              voxl-libuvc                 1.0.7
              voxl-logger                 0.3.5
              voxl-mavcam-manager         0.5.3
              voxl-mavlink                0.1.1
              voxl-mavlink-server         1.3.2
              voxl-modem                  1.0.8
              voxl-mongoose               7.7.0-1
              voxl-mpa-to-ros             0.3.7
              voxl-mpa-tools              1.1.3
              voxl-opencv                 4.5.5-2
              voxl-portal                 0.6.2
              voxl-px4                    1.14.0-2.0.59
              voxl-px4-imu-server         0.1.2
              voxl-px4-params             0.3.2
              voxl-qvio-server            1.0.0
              voxl-remote-id              0.0.9
              voxl-streamer               0.7.4
              voxl-suite                  1.1.1
              voxl-tag-detector           0.0.4
              voxl-tflite-server          0.3.1
              voxl-utils                  1.3.3
              voxl-uvc-server             0.1.6
              voxl-vision-hub             1.7.2
              voxl2-system-image          1.7.1-r0
              voxl2-wlan                  1.0-r0
      --------------------------------------------------------------------------------
      

      Services shown here:

      voxl2-mini:~$ voxl-inspect-services
      Scanning services...
      
       Service Name             |  Enabled  |   Running   |  CPU Usage
      -------------------------------------------------------------------
       docker-autorun           | Disabled  | Not Running |
       modallink-relink         | Disabled  | Not Running |
       voxl-camera-server       |  Enabled  | Not Running |
       voxl-cpu-monitor         |  Enabled  |   Running   |     0.1%
       voxl-dfs-server          | Disabled  | Not Running |
       voxl-feature-tracker     | Disabled  | Not Running |
       voxl-flow-server         | Disabled  | Not Running |
       voxl-imu-server          |  Enabled  |   Running   |     0.0%
       voxl-lepton-server       | Disabled  | Not Running |
       voxl-mavcam-manager      | Disabled  | Not Running |
       voxl-mavlink-server      |  Enabled  |   Running   |     0.4%
       voxl-modem               | Disabled  | Not Running |
       voxl-portal              |  Enabled  |   Running   |     0.2%
       voxl-px4-imu-server      | Disabled  | Not Running |
       voxl-px4                 | Disabled  | Not Running |
       voxl-qvio-server         | Disabled  | Not Running |
       voxl-rangefinder-server  | Disabled  | Not Running |
       voxl-remote-id           | Disabled  | Not Running |
       voxl-softap              | Disabled  | Not Running |
       voxl-static-ip           | Disabled  | Not Running |
       voxl-streamer            | Disabled  | Not Running |
       voxl-tag-detector        | Disabled  | Not Running |
       voxl-tflite-server       | Disabled  | Not Running |
       voxl-time-sync           | Disabled  | Not Running |
       voxl-uvc-server          | Disabled  | Not Running |
       voxl-vision-hub          |  Enabled  |   Running   |     0.9%
       voxl-wait-for-fs         |  Enabled  |  Completed  |
      

      Before running the camera server I used:

       voxl-configure-cameras 4
      Camera Configuration: 4
      
      camera server config helper list:
      tracking:ov7251:0:
      hires:imx214:1:
      
      driver binary list:
      /usr/share/modalai/chi-cdk/ov7251/com.qti.sensormodule.ov7251_2.bin
      /usr/share/modalai/chi-cdk/imx214/com.qti.sensormodule.imx214_3.bin
      
      calling camera-server-config-helper tracking:ov7251:0: hires:imx214:1:
      detected system image 1.7.1
      using new imx214 defaults
      successfully wrote this camera config to disk:
      =================================================================
      configuration for 2 cameras:
      
      cam #0
          name:                tracking
          sensor type:         ov7251
          isEnabled:           1
          camId:               0
          camId2:              -1
          fps:                 30
          en_rotate:           0
          en_rotate2:          0
      
          en_preview:          1
          pre_width:           640
          pre_height:          480
          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
      
          ae_mode:             lme_msv
          standby_enabled:     0
          decimator:           1
          independent_exposure:0
      
      cam #1
          name:                hires
          sensor type:         imx214
          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:   1024
          small_video_height:  768
      
          en_large_video:      1
          large_video_width:   4208
          large_video_height:  3120
      
          en_snapshot:         1
          snap_width:          4208
          snap_height:         3120
      
          ae_mode:             isp
          standby_enabled:     0
          decimator:           1
          independent_exposure:0
      
      =================================================================
      camera_server_config_helper is done
      copying required camera drivers in place
      /usr/share/modalai/chi-cdk/ov7251/com.qti.sensormodule.ov7251_2.bin
      /usr/share/modalai/chi-cdk/imx214/com.qti.sensormodule.imx214_3.bin
      enabling voxl-camera-server
      
      ------------------------------------------------------------------
      Done Configuring Cameras
      Please power cycle VOXL to load new drivers
      camera server will start on next reboot
      ------------------------------------------------------------------
      

      voxl-camera-server --list shows no cameras:

      voxl2-mini:~$ voxl-camera-server --list
      DEBUG:   Attempting to open the hal module
      DEBUG:   SUCCESS: Camera module opened on attempt 0
      DEBUG:   ----------- Number of cameras: 0
      
      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: 0
      

      DMESG shows this each time I run camera server:

      [ 2918.263294] CAM_ERR: CAM-MEM: cam_mem_mgr_create_debug_fs: 126 failed to create dentry
      [ 2918.295287] CAM_INFO: CAM-HFI: cam_hfi_init: 878 Init IO1 : [0x10c00000 0xcf300000] IO2 [0xe0200000 0x1ed00000]
      [ 2918.305642] CAM_INFO: CAM-ICP: cam_icp_mgr_process_dbg_buf: 2572 FW_DBG:CICP_FW_E : HFI  :QC_IMAGE_VERSION_STRING=CICP.FW.1.0-00079,OEM_IMAGE_VERSION_STRING=CRM,BUILD_TIME: Oct 17 2019 05:49:19,CACHE_ENABLED at icphostinterface.c:636 QC_IMAGE_VERSION_STRING=CICP.FW.1.0-00079 OEM_IMAGE_VERSION_STRING=CRM
      [ 2918.305653] CAM_INFO: CAM-ICP: cam_icp_mgr_hw_open: 3879 FW download done successfully
      [ 2918.305661] CAM_INFO: CAM-ICP: cam_icp_mgr_process_dbg_buf: 2572 FW_DBG:CICP_FW_E : HFI  :ELF variant: CACHE-ENABLED:T480:API_V2:USE_CDM_1_1: , API version: 0x2000049 at icphostinterface.c:637 QC_IMAGE_VERSION_STRING=CICP.FW.1.0-00079 OEM_IMAGE_VERSION_STRING=CRM
      [ 2918.372954] qcom,camera ac50000.qcom,cci:qcom,cam-sensor2: Linked as a consumer to regulator.60
      [ 2918.373051] qcom,camera ac50000.qcom,cci:qcom,cam-sensor2: Linked as a consumer to regulator.79
      [ 2918.397175] CAM_INFO: CAM-SENSOR: cam_sensor_set_alt_id: 731 [Applying Alternative Address] : Sensor Index   : 3611762868
      [ 2918.397187] CAM_INFO: CAM-SENSOR: cam_sensor_set_alt_id: 732 [Applying Alternative Address] : Slave Address  : 0xE2
      [ 2918.397195] CAM_INFO: CAM-SENSOR: cam_sensor_set_alt_id: 733 [Applying Alternative Address] : Slave sensor id: 0x7750
      [ 2918.397203] CAM_INFO: CAM-SENSOR: cam_sensor_set_alt_id: 734 [Applying Alternative Address] : cci_client sid : 0x71
      [ 2918.397394] CAM_ERR: CAM-CCI: cam_cci_irq: 232 Base:        pK-error, M0_Q0 NACK ERROR: 0x8000000
      [ 2918.397453] CAM_ERR: CAM-CCI: cam_cci_wait: 270 failed rc -22
      [ 2918.397462] CAM_ERR: CAM-CCI: cam_cci_transfer_end: 345 failed rc -22
      [ 2918.397473] CAM_ERR: CAM-CCI: cam_cci_data_queue: 870 Slave: 0xe0 failed rc -22
      [ 2918.397479] CAM_ERR: CAM-CCI: cam_cci_i2c_write: 1450 failed rc: -22
      [ 2918.397489] CAM_ERR: CAM-SENSOR: cam_cci_i2c_write_table_cmd: 123 Failed rc = -22
      [ 2918.397498] CAM_ERR: CAM-SENSOR: cam_sensor_set_alt_id: 768 [Applying Alternative Address] : Probe : camera_io_dev_write failed: rc=-22
      [ 2918.397596] CAM_ERR: CAM-CCI: cam_cci_read: 1340 read_words = 0, exp words = 1
      [ 2918.397619] CAM_ERR: CAM-CCI: cam_cci_read_bytes: 1613 failed to read rc:-22
      [ 2918.397643] CAM_ERR: CAM-SENSOR: cam_cci_i2c_read: 35 rc = -22
      [ 2918.397661] CAM_ERR: CAM-CCI: cam_cci_irq: 238 Base:        pK-error, M0_Q1 NACK ERROR: 0x10000000
      [ 2918.397682] CAM_WARN: CAM-SENSOR: cam_sensor_match_id: 707 read id: 0x0 expected id 0x7750:
      [ 2918.397846] qcom,camera ac50000.qcom,cci:qcom,cam-sensor2: Dropping the link to regulator.79
      [ 2918.402060] qcom,camera ac50000.qcom,cci:qcom,cam-sensor2: Dropping the link to regulator.60
      [ 2918.430268] qcom,camera ac50000.qcom,cci:qcom,cam-sensor3: Linked as a consumer to regulator.55
      [ 2918.430803] qcom,camera ac50000.qcom,cci:qcom,cam-sensor3: Linked as a consumer to regulator.60
      [ 2918.430946] qcom,camera ac50000.qcom,cci:qcom,cam-sensor3: Linked as a consumer to regulator.79
      [ 2918.448589] CAM_ERR: CAM-CCI: cam_cci_irq: 264 Base:        pK-error, M1_Q1 NACK ERROR: 0x40000000
      [ 2918.448773] CAM_ERR: CAM-CCI: cam_cci_read: 1329 ERROR with Slave 0x20:
      [ 2918.448784] CAM_ERR: CAM-CCI: cam_cci_read_bytes: 1613 failed to read rc:-22
      [ 2918.448792] CAM_ERR: CAM-SENSOR: cam_cci_i2c_read: 35 rc = -22
      [ 2918.448800] CAM_WARN: CAM-SENSOR: cam_sensor_match_id: 707 read id: 0x0 expected id 0x214:
      [ 2918.448930] qcom,camera ac50000.qcom,cci:qcom,cam-sensor3: Dropping the link to regulator.79
      [ 2918.452959] qcom,camera ac50000.qcom,cci:qcom,cam-sensor3: Dropping the link to regulator.60
      [ 2918.453101] qcom,camera ac50000.qcom,cci:qcom,cam-sensor3: Dropping the link to regulator.55
      [ 2918.502038] CAM_WARN: CAM-CRM: cam_req_mgr_close: 160 release invoked associated userspace process has died
      

      Could I have some guidance on where to go next?

      Thanks!

      ModeratorM 1 Reply Last reply Reply Quote 0
      • ModeratorM
        Moderator ModalAI Team @LucaVertiq
        last edited by

        @LucaVertiq can you please take a picture of your setup? It's likely that either the flex cables are installed backwards or not fully seated

        LucaVertiqL 1 Reply Last reply Reply Quote 0
        • LucaVertiqL
          LucaVertiq @Moderator
          last edited by

          @Moderator Sure thing. Does this look right?PXL_20231204_180950909.MP.jpg PXL_20231204_180935102.jpg PXL_20231204_180929838.MP.jpg

          1 Reply Last reply Reply Quote 0
          • LucaVertiqL
            LucaVertiq
            last edited by

            @Moderator I've attempted both cameras by themselves with proper configuration as well on the same interposer and no dice.

            N 1 Reply Last reply Reply Quote 0
            • N
              Nathan Raras ModalAI Team @LucaVertiq
              last edited by

              @LucaVertiq I was able to replicate the same setup by following the documentation you provided. Running this command, which is documented at the bottom of the C4 camera configuration, switches the camera ids so that hires is on 0 and tracking is on 1 rather than vice versa. I was able to detect the two cameras but too could not get voxl-camera-server running yet. Hope this helps a bit!Screenshot from 2023-12-05 11-59-23.png
              Screenshot from 2023-12-05 12-01-01.png

              LucaVertiqL 1 Reply Last reply Reply Quote 0
              • LucaVertiqL
                LucaVertiq @Nathan Raras
                last edited by

                @Nathan-Raras Thanks for testing that. When I did run that command and reboot I ended up with the same results as I had before.

                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: 0
                
                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: 0
                

                Here's my voxl-camera-server.conf
                Is there anything obviously wrong?

                 cat /etc/modalai/voxl-camera-server.conf
                /**
                 * voxl-camera-server Configuration File
                 *
                 * Each camera has configurations for up to 4 HAL3 streams:
                 *    - `preview` stream for raw unprocessed images from CV cameras
                 *    - `small_video` 720p (ish) h264/h265 compressed for fpv video streaming
                 *    - `large_video` 4k (ish) h264/h265 for onboard video recording to disk
                 *    - `snapshot` ISP-processed JPG snapshots that get saved to disk
                 *
                 * on QRB5165 platforms (VOXL2 and VOXL2 mini) you can only have 3 of the 4 enabled
                 *
                 * This file is generated from default values by voxl-configure-cameras.
                 * Do not expect arbitrary resolutions to work, the ISP and video compression
                 * pipelines only support very specific resolutions.
                 *
                 * The default video compression mode is cqp or Constant Quantization Parameter
                 *
                 *
                 *
                 */
                {
                        "version":      0.1,
                        "cameras":      [{
                                        "type": "imx214",
                                        "name": "hires",
                                        "enabled":      true,
                                        "camera_id":    0,
                                        "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,
                                        "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,
                                        "en_snapshot":  true,
                                        "en_snapshot_width":    4208,
                                        "en_snapshot_height":   3120,
                                        "ae_mode":      "isp"
                                }, {
                                        "type": "ov7251",
                                        "name": "tracking0",
                                        "enabled":      true,
                                        "camera_id":    1,
                                        "fps":  30,
                                        "en_rotate":    false,
                                        "en_preview":   true,
                                        "preview_width":        640,
                                        "preview_height":       480,
                                        "en_raw_preview":       true,
                                        "ae_mode":      "lme_msv",
                                        "ae_desired_msv":       60,
                                        "exposure_min_us":      20,
                                        "exposure_max_us":      33000,
                                        "gain_min":     54,
                                        "gain_max":     8000,
                                        "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
                                }]
                }
                
                N 1 Reply Last reply Reply Quote 0
                • N
                  Nathan Raras ModalAI Team @LucaVertiq
                  last edited by

                  @LucaVertiq It seems that we had switched the image sensor binaries for 1.1.1 in which the tracking camera is connected to JL and hires is connected to JU as follows: Screenshot from 2023-12-06 11-42-10.png

                  After running the C4 configuration, you should be able to see the cameras enumerate when running:

                  voxl-camera-server -l
                  

                  Screenshot from 2023-12-06 11-46-52.png

                  To view the pipes for each camera, we can run voxl-camera-server in debug mode using:

                  voxl-camera-server -d0
                  

                  and in a seperate terminal, run:

                  voxl-inspect-cam -a
                  

                  Screenshot from 2023-12-06 11-51-07.png

                  Hope this helps!

                  LucaVertiqL 1 Reply Last reply Reply Quote 0
                  • LucaVertiqL
                    LucaVertiq @Nathan Raras
                    last edited by

                    @Nathan-Raras We're getting somewhere! So after running:

                    voxl-configure-cameras 04
                    

                    and rebooting I now get this on list:

                    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: 2
                    
                    DEBUG:   Cam idx: 0, Cam slot: 2, Slave Address: 0x00E2, Sensor Id: 0x7750
                    DEBUG:   Cam idx: 1, 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: 2
                    
                    
                    ====================================
                    Stats for camera: 0
                    
                    ANDROID_SCALER_AVAILABLE_RAW_SIZES:
                    These are likely supported by the sensor
                     640 x  480
                     640 x  480
                     640 x  480
                    
                    ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS:
                    These are NOT necessarily supported by the sensor
                     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
                     640 x  480 HAL_PIXEL_FORMAT_RAW10
                     640 x  480 HAL_PIXEL_FORMAT_RAW12
                     640 x  480 HAL_PIXEL_FORMAT_RAW16
                     640 x  480 HAL_PIXEL_FORMAT_RAW_OPAQUE
                    
                    ANDROID_SENSOR_INFO_SENSITIVITY_RANGE
                            min = 54
                            max = 3451
                    
                    ANDROID_SENSOR_MAX_ANALOG_SENSITIVITY
                            3451
                    
                    ANDROID_SENSOR_INFO_EXPOSURE_TIME_RANGE
                            min = 0ns
                            max = 1266732525ns
                    
                    
                    ====================================
                    Stats for camera: 1
                    
                    ANDROID_SCALER_AVAILABLE_RAW_SIZES:
                    These are likely supported by the sensor
                    4208 x 3120
                    3840 x 2160
                    1920 x 1080
                    1920 x 1080
                    
                    ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS:
                    These are NOT necessarily supported by the sensor
                    4208 x 3120 HAL_PIXEL_FORMAT_YCbCr_420_888
                    4208 x 3120 HAL_PIXEL_FORMAT_BLOB
                    4160 x 3120 HAL_PIXEL_FORMAT_YCbCr_420_888
                    4160 x 3120 HAL_PIXEL_FORMAT_BLOB
                    4096 x 2304 HAL_PIXEL_FORMAT_YCbCr_420_888
                    4096 x 2304 HAL_PIXEL_FORMAT_BLOB
                    4096 x 2160 HAL_PIXEL_FORMAT_YCbCr_420_888
                    4096 x 2160 HAL_PIXEL_FORMAT_BLOB
                    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  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
                    4208 x 3120 HAL_PIXEL_FORMAT_RAW10
                    4208 x 3120 HAL_PIXEL_FORMAT_RAW12
                    4208 x 3120 HAL_PIXEL_FORMAT_RAW16
                    4208 x 3120 HAL_PIXEL_FORMAT_RAW_OPAQUE
                    
                    ANDROID_SENSOR_INFO_SENSITIVITY_RANGE
                            min = 54
                            max = 431
                    
                    ANDROID_SENSOR_MAX_ANALOG_SENSITIVITY
                            431
                    
                    ANDROID_SENSOR_INFO_EXPOSURE_TIME_RANGE
                            min = 10449ns
                            max = 683714540ns
                    
                    ====================================
                    Number of cameras detected: 2
                    ====================================
                    voxl2-mini:~$
                    

                    It's detecting the cameras! Woo!

                    But on reboot with the camera server enabled it still crashed. Running the camera server gets something, but then says aborted after a few seconds

                    voxl2-mini:~$ voxl-camera-server
                    GPS server Connected
                    detected system image 1.7.1
                    using new imx214 defaults
                    =================================================================
                    configuration for 2 cameras:
                    
                    cam #0
                        name:                tracking
                        sensor type:         ov7251
                        isEnabled:           1
                        camId:               0
                        camId2:              -1
                        fps:                 30
                        en_rotate:           0
                        en_rotate2:          0
                    
                        en_preview:          1
                        pre_width:           640
                        pre_height:          480
                        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
                    
                        ae_mode:             lme_msv
                        standby_enabled:     0
                        decimator:           1
                        independent_exposure:0
                    
                    cam #1
                        name:                hires
                        sensor type:         imx214
                        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:   1024
                        small_video_height:  768
                    
                        en_large_video:      1
                        large_video_width:   4208
                        large_video_height:  3120
                    
                        en_snapshot:         1
                        snap_width:          4208
                        snap_height:         3120
                    
                        ae_mode:             isp
                        standby_enabled:     0
                        decimator:           1
                        independent_exposure:0
                    
                    =================================================================
                    Starting Camera: tracking
                    Using gain limits min: 54 max: 3451
                    gbm_create_device(156): Info: backend name is: msm_drm
                    Starting Camera: hires
                    Using gain limits min: 54 max: 431
                    WARNING: Port Def 0:
                            Count Min: 8
                            Count Actual: 16
                            Size: 0x180000
                            Buffers Contiguous: Yes
                            Buffer Alignment: 0
                    WARNING: Port Def 1:
                            Count Min: 4
                            Count Actual: 16
                            Size: 0x5a0000
                            Buffers Contiguous: No
                            Buffer Alignment: 0
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    WARNING: Port Def 0:
                            Count Min: 8
                            Count Actual: 16
                            Size: 0x17a0000
                            Buffers Contiguous: Yes
                            Buffer Alignment: 0
                    WARNING: Port Def 1:
                            Count Min: 4
                            Count Actual: 16
                            Size: 0x5ec000
                            Buffers Contiguous: No
                            Buffer Alignment: 0
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    gbm_create_device(156): Info: backend name is: msm_drm
                    
                    ------ voxl-camera-server: Camera server is now running
                    Aborted
                    

                    Can't fit the verbose output in the forum post, but I've saved it. I can't seem to attach it to a forum post though.

                    LucaVertiqL 1 Reply Last reply Reply Quote 0
                    • LucaVertiqL
                      LucaVertiq @LucaVertiq
                      last edited by LucaVertiq

                      EDIT: It all works! I think I have a better understanding of how things work now? When I was only detecting one camera, the camera was on the upper connector and I had to have it as the first camera in the config for it to work. When I re-seated the cable and could detect two cameras I had to have the first cam in the config be the tracking one from the lower connector and the hires be on the upper. Now it all works. Thanks for the help!

                      @Nathan-Raras Now after a few reboots and changing things I'm detecting the hires, but no tracking, but it's not crashing.

                      I'm just going to put my voxl-camera-server.conf file here, and the binaries that are in /usr/lib/camera.

                      voxl2-mini:~$ ls /usr/lib/camera/
                      com.qti.eeprom.cmk_imx577.so       com.qti.sensor.ov7251_front_left.so        com.qti.sensor.ov9782_front_right.so
                      com.qti.sensor.ar0144.so           com.qti.sensor.ov7251_front_left_flip.so   com.qti.sensor.ov9782_front_right_flip.so
                      com.qti.sensor.cmk_imx577.so       com.qti.sensor.ov7251_front_right.so       com.qti.sensor.ov9782_rear_left.so
                      com.qti.sensor.cmk_imx577_flip.so  com.qti.sensor.ov7251_front_right_flip.so  com.qti.sensor.ov9782_rear_left_flip.so
                      com.qti.sensor.imx214.so           com.qti.sensor.ov7251_fsin.so              com.qti.sensor.ov9782_rear_right.so
                      com.qti.sensor.imx214_flip.so      com.qti.sensor.ov7251_fsout.so             com.qti.sensor.ov9782_rear_right_flip.so
                      com.qti.sensor.imx335.so           com.qti.sensor.ov7251_rear_left.so         com.qti.sensormodule.imx214_3.bin
                      com.qti.sensor.imx377.so           com.qti.sensor.ov7251_rear_left_flip.so    com.qti.sensormodule.ov7251_2.bin
                      com.qti.sensor.imx678.so           com.qti.sensor.ov7251_rear_right.so        com.qti.tuned.cmk_imx577.bin
                      com.qti.sensor.imx678_flip.so      com.qti.sensor.ov7251_rear_right_flip.so   com.qti.tuned.cmk_ov9282.bin
                      com.qti.sensor.imx678_mod.so       com.qti.sensor.ov9782.so                   com.qti.tuned.default.bin
                      com.qti.sensor.irs1645.so          com.qti.sensor.ov9782_front_left.so        com.qti.tuned.sony_imx335.bin
                      com.qti.sensor.ov7251.so           com.qti.sensor.ov9782_front_left_flip.so   components
                      
                      voxl2-mini:~$ cat /etc/modalai/voxl-camera-server.conf
                      /**
                       * voxl-camera-server Configuration File
                       *
                       * Each camera has configurations for up to 4 HAL3 streams:
                       *    - `preview` stream for raw unprocessed images from CV cameras
                       *    - `small_video` 720p (ish) h264/h265 compressed for fpv video streaming
                       *    - `large_video` 4k (ish) h264/h265 for onboard video recording to disk
                       *    - `snapshot` ISP-processed JPG snapshots that get saved to disk
                       *
                       * on QRB5165 platforms (VOXL2 and VOXL2 mini) you can only have 3 of the 4 enabled
                       *
                       * This file is generated from default values by voxl-configure-cameras.
                       * Do not expect arbitrary resolutions to work, the ISP and video compression
                       * pipelines only support very specific resolutions.
                       *
                       * The default video compression mode is cqp or Constant Quantization Parameter
                       *
                       *
                       *
                       */
                      {
                              "version":      0.1,
                              "cameras":      [{
                                              "type": "imx214",
                                              "name": "hires",
                                              "enabled":      true,
                                              "camera_id":    0,
                                              "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,
                                              "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,
                                              "en_snapshot":  true,
                                              "en_snapshot_width":    4208,
                                              "en_snapshot_height":   3120,
                                              "ae_mode":      "isp"
                                      }, {
                                              "type": "ov7251",
                                              "name": "tracking",
                                              "enabled":      true,
                                              "camera_id":    1,
                                              "fps":  30,
                                              "en_rotate":    false,
                                              "en_preview":   true,
                                              "preview_width":        640,
                                              "preview_height":       480,
                                              "en_raw_preview":       true,
                                              "ae_mode":      "lme_msv",
                                              "ae_desired_msv":       60,
                                              "exposure_min_us":      20,
                                              "exposure_max_us":      33000,
                                              "gain_min":     54,
                                              "gain_max":     8000,
                                              "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
                                      }]
                      }
                      
                      N 1 Reply Last reply Reply Quote 0
                      • N
                        Nathan Raras ModalAI Team @LucaVertiq
                        last edited by

                        @LucaVertiq Looking at your voxl-camera-server.conf file, it looks like the configurations are flipped in which tracking should be on camera_id: 0 and hires should be on camera_id: 1. Deleting the camera drivers in /usr/lib/camera and reconfiguring should fix that issue in your voxl-camera-server.conf file

                        rm com.qti.sensormodule.imx214_3.bin
                        
                        rm com.qti.sensormodule.ov7251_2.bin 
                        
                        
                        voxl-configure-cameras 04
                        
                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post
                        Powered by NodeBB | Contributors