Project

General

Profile

MIPI Cameras

The MitySOM-QC6490 Devkit supports image and video capture via the MIPI CSI interfaces ((!) Note that currently CSI0 is the only MIPI CSI interface supported. Support for CSI1-CSI4 will be added in a future software release).

Development Board Configuration

Ensure that Switch S8 is set properly.
  • Switch 1 should be set to enable the 1V8 CSI from the DC supply
  • Switch 2 should be not set to disable the 1V8 CSI from the SOM
  • Switch 3 should NOT be set for Rev 1 or 2 of the Development Board as 3.3V from the SOM may actually be a higher volage. See MitySOM-QC6490 Development Kit Datasheet for further details
  • Switch 4 should be set to enable the 3V3 CSI from the DC supply

Known Working Cameras

Note that Waveshare OV9281-120 Mono Camera was used to validate the MIPI CSI interface.

Capturing Single Images

  1. Ensure the qcom-multimedia-image has been flashed onto the MitySOM-QC6490.
    1. You can verify which image you are working with via the following command:
      root@qcs6490-mitysom-devkit:~# cat /etc/buildinfo | grep IMAGE_BASENAME
      IMAGE_BASENAME = qcom-multimedia-image 
      
  2. The following Gstreamer pipeline will allow you to capture a single JPEG image:
    gst-launch-1.0 qtiqmmfsrc camera=0 exposure-mode=0 manual-exposure-time=1333333 ! jpegenc snapshot=true ! identity error-after=2 ! filesink location=snap.jpg
    
    1. Note that this pipeline uses manual exposure. The value after manual-exposure-time= is the exposure time in nanoseconds.
    2. Further details on the qtiqmmfsrc Qualcomm GStreamer plugin and what properties are supported can be found here

Capturing Video

  1. Ensure the qcom-multimedia-image has been flashed onto the MitySOM-QC6490.
    1. You can verify which image you are working with via the following command:
      root@qcs6490-mitysom-devkit:~# cat /etc/buildinfo | grep IMAGE_BASENAME
      IMAGE_BASENAME = qcom-multimedia-image 
      
  2. The following Gstreamer pipeline will allow you to capture an MP4 encoded video:
    gst-launch-1.0 -e qtiqmmfsrc name=camsrc camera=0 ! \
    video/x-raw,format=NV12,width=1280,height=720,framerate=30/1,\
    interlace-mode=progressive,colorimetry=bt601 ! v4l2h264enc \
    capture-io-mode=4 output-io-mode=5 extra-controls="controls,video_bitrate=6000000,\
    video_bitrate_mode=0;" ! h264parse ! mp4mux ! filesink location=mux_avc.mp4
    
    1. Once the video capture begins a timer will be displayed. Use Ctrl+C to end video capture.
    2. Upon ending capture an MP4 video named mux_avc.mp4 can be found in your current working directory.

Troubleshooting

  • Double check the camera module connection to the FPC connector at CSI0.
  • Restart the camera server with the following command:
    systemctl restart cam-server
    
  • After restarting the cam-server, or rebooting, search the kernel log for a successful probe of the camera module by running the following command:
    journalctl | grep -i "probe suc" 
    
    • If the sensor is properly connected and its I2C management interface is operational, the camera driver will successfully probe the camera module resulting in the following output:
      qcs6490-mitysom-devkit kernel: CAM_INFO: CAM-SENSOR: cam_sensor_driver_cmd: 939: Probe success,slot:1,slave_addr:0xc0,sensor_id:0x9281, is always on: 0
      

Go to top
Add picture from clipboard (Maximum size: 1 GB)