# 故障排除

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

如果摄像头应用程序不起作用，请检查以下内容：
1. 检查摄像头模块连接和 DIP 开关设置。参见[入门指南](https://docs.qualcomm.com/doc/80-70014-17Y/topic/getting_started.html)。
2. 检查传感器探头。
    1. 使用以下命令收集日志：

            # journalctl -f > /opt/log.txtCopy to clipboard
    2. 在日志中搜索 "probe success"。探测成功 (probe success) 意味着摄像头模块已通电并响应 I2C 控制。如果特定传感器没有 "probe success" 日志，则可能是柔性电缆连接或摄像头模块的问题。
以下日志指示探测到一个 IMX577 (0x34)、一个 OV9282 (0xc0) 和两个 GMSL 解串器 (0x90)：

            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. 检查摄像头传感器驱动程序命令。
收集日志并搜索 "cam\_sensor\_driver\_cmd"。"CAM\_START\_DEV Success" 表示摄像头传感器流式传输开始。"CAM\_STOP\_DEV Success" 表示摄像头传感器流式传输停止。例如：

        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. 检查传感器流式传输。
    1. 启用 CSID SOF/EOF IRQ 日志：

            # 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. 捕获的日志有助于提供有关 SOF 和 EOF 的详细信息。在日志 (trace.txt) 中搜索 "irq\_status\_ipp"。BIT12 (0x1000) 表示 SOF 数据包，BIT9 (0x200) 表示 EOF 数据包。日志如下所示：

                       <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. 运行单流视频录制用例以排除任何其他插件依赖项：

        # 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

    使用 720 分辨率配置，因为 OV9282 最多支持 1 MP (1280x720) 分辨率。

Last Published: Oct 23, 2024

[Previous Topic
Linear 与 SHDR 模式自动切换](https://docs.qualcomm.com/bundle/publicresource/80-70014-17Y/topics/auto_linear_vs_shdr_mode_switch_public.md)