# Troubleshooting

Source: [https://docs.qualcomm.com/doc/80-70015-17/topic/troubleshooting.html](https://docs.qualcomm.com/doc/80-70015-17/topic/troubleshooting.html)

If the camera app does not work, check the following:
1. Check the camera module connection and DIP switch settings. See [Getting Started](https://docs.qualcomm.com/doc/80-70015-17/topic/getting_started.html).
2. Check the sensor probe.
    1. Collect logs using following
                            command:

            # journalctl -f > /opt/log.txtCopy to clipboard
    2. Search for "probe success" in the log. Probe success means the camera
                            module is powered up and responding to I2C control. If there is no
                            “probe success” log for a particular sensor, the flex cable connection
                            or camera modulemay be the problem.
The following log indicates one
                                IMX577 (0x34), one OV9282 (0xc0), and two GMSL deserializer (0x90)
                                are
                                probed:

            Jun 20 02:12:42 qcm6490 kernel: CAM_INFO: CAM-SENSOR: cam_sensor_driver_cmd: 938: Probe success,slot:0,slave_addr:0x34,sensor_id:0x577, is always on: 0 
            Jun 20 02:12:42 qcm6490 kernel: CAM_INFO: CAM-SENSOR: cam_sensor_driver_cmd: 938: Probe success,slot:1,slave_addr:0xc0,sensor_id:0x9281, is always on: 0 
            Jun 20 02:12:43 qcm6490 kernel: CAM_INFO: CAM-SENSOR: cam_sensor_driver_cmd: 938: Probe success,slot:4,slave_addr:0x90,sensor_id:0x94, is always on: 0 
            Jun 20 02:12:43 qcm6490 kernel: CAM_INFO: CAM-SENSOR: cam_sensor_driver_cmd: 938: Probe success,slot:5,slave_addr:0x90,sensor_id:0x94, is always on: 0
            Copy to clipboard
3. Check the camera sensor driver command.
Collect logs and search for
                        "cam\_sensor\_driver\_cmd". "CAM\_START\_DEV Success" indicates camera sensor
                        streaming starts. "CAM\_STOP\_DEV Success" indicates camera sensor streaming
                        stops. For
                        example:

        Jun 20 02:12:50 qcm6490 kernel: CAM_INFO: CAM-SENSOR: cam_sensor_driver_cmd: 1017: CAM_ACQUIRE_DEV Success, sensor_id:0x577,sensor_slave_addr:0x34, is always on: 0 
        Jun 20 02:12:50 qcm6490 kernel: CAM_INFO: CAM-SENSOR: cam_sensor_driver_cmd: 1128: CAM_START_DEV Success, sensor_id:0x577,sensor_slave_addr:0x34 
        Jun 20 02:12:53 qcm6490 kernel: CAM_INFO: CAM-SENSOR: cam_sensor_driver_cmd: 1156: CAM_STOP_DEV Success, sensor_id:0x577,sensor_slave_addr:0x34 
        Jun 20 02:12:53 qcm6490 kernel: CAM_INFO: CAM-SENSOR: cam_sensor_driver_cmd: 1070: CAM_RELEASE_DEV Success, sensor_id:0x577,sensor_slave_addr:0x34
        Copy to clipboard
4. Check sensor streaming.
    1. Enable CSID SOF/EOF IRQ
                            logs:

            # mount -o rw,remount /
            # mount -t debugfs none /sys/kernel/debug/
            # echo 0x8 > /sys/module/camera/parameters/debug_mdl
            # echo 3 >/sys/kernel/debug/camera_ife/ife_csid_debug
            # echo 1 > /sys/kernel/tracing/tracing_on
            # echo 1 > /sys/kernel/tracing/events/camera/cam_log_debug/enable
            # echo 2 > /sys/module/camera/parameters/debug_type
            # cat /sys/kernel/tracing/trace_pipe > trace.txt
            Copy to clipboard
    2. The captured logs can help provide the details about the SOF and EOF.
                            Search for “irq\_status\_ipp” in the log (trace.txt). BIT12(0x1000)
                            denotes an SOF packet and BIT9(0x200) denotes an EOF packet. The log
                            should resemble the
                            following:

                       <idle>-0       [000] d.h1. 19287.546764: cam_log_debug: CAM_DBG: CAM-ISP: cam_ife_csid_irq: 4996: irq_status_ipp = 0x1110 
                   cam-server-25604   [000] dNH.. 19287.561705: cam_log_debug: CAM_DBG: CAM-ISP: cam_ife_csid_irq: 4996: irq_status_ipp = 0xee8
            Copy to clipboard
5. Run a single stream video recording use case to rule out any other plug-in
                        dependency:

        # mount -o rw,remount /
        # export XDG_RUNTIME_DIR=/dev/socket/weston
        # export WAYLAND_DISPLAY=wayland-1
        # gst-launch-1.0 -e qtiqmmfsrc name=camsrc ! video/x-raw\(memory:GBM\),format=NV12,width=1280,height=720,framerate=30/1,compression=ubwc,interlace-mode=progressive,colorimetry=bt601 \
        ! v4l2h264enc capture-io-mode=5 output-io-mode=5 extra-controls="controls,video_bitrate=5000000,video_bitrate_mode=0;" \
        ! queue ! h264parse ! mp4mux ! queue ! filesink location=/opt/mux_avc.mp4
        Copy to clipboard

    Use 720 resolution configuration because OV9282 supports up
                        to 1 MP (1280x720) resolution.

Last Published: Oct 17, 2024

[Previous Topic
Auto linear vs. SHDR mode switch](https://docs.qualcomm.com/bundle/publicresource/80-70015-17/topics/auto_linear_vs_shdr_mode_switch_public.md) [Next Topic
Archive](https://docs.qualcomm.com/bundle/publicresource/80-70015-17/topics/Archive.md)