跳到主要内容

Jetson Orin 使用说明

这个模块外形基于 Jetson Orin 设计, 用户可以直接组装于 Jetson Orin Nano/NX 开发套件上。

硬件连接

连接 Jetson Orin 开发套件电源接线
CFG 配置
  • 如图所示,将解串板的 CSI0 接口用配送的排线连接到 Jetson Orin 主板的 Cam0 接口

    CSI 接口兼容性

    NVIDIA Jetson® Orin™ Nano 套件的 CAM0 和 CAM1 接口的 CSI 定义顺序不同,目前解串板只能接入 CAM0 接口。具体请查看相关 Pin 定义以及 Jetson® Orin™ 套件原理图中的 CAM0/1 接口定义顺序。

    FPC 线缆长度限制

    22Pin FPC 排线无精确的阻抗控制,当使用高分辨率相机时 CSI 速率较高,建议采用较短的 FPC 线缆:

    • 双路 8M 相机同时接入:实测仅支持 5cm 长度的线材
    • 单路接入:可使用 10cm 或 15cm 的线材
  • 将电源线分别接入到解串板的电源接口和 Jetson Orin 主板 40PIN 中的 5V、GND 排针上。为了确保解串板获取足够电源,请将两个 5V 引脚都接上,也可以接入外部供电。

  • 将 GMSL 相机使用同轴线接入解码板的相机接口。

  • 将 CFG 开关按照图示,拨到 0100 状态(默认为 ISX031 相机配置)

软件配置

  • Jetson Orin 主板需要烧录相应支持的 Jetson 系统,目前驱动仅支持 R35.4.1 版本

    • 可以用指令查看当前的系统版本

      cat /etc/nv_tegra_release

      查看系统版本

  • 上电主板后,打开 Terminal 终端,下载驱动并解压出驱动包

    wget https://files.waveshare.com/wiki/MAX9296-GMSL-Camera-Board/MAX9296-GMSL-Camera-Board-Driver.zip
    unzip MAX9296-GMSL-Camera-Board-Driver.zip
  • cd 指令进入驱动包目录,并查看文件。

    • 根据使用的相机型号进入对应目录,这里我们以 ISX031 为例

      cd MAX9296-GMSL-Camera-Board-Driver
      ls
      cd ONXA_SY.ISX031Fx2_L4TR35.4.1
      cd kernel
  • 在内核文件中,dtb 文件夹包含了支持多个主板型号的设备树文件,这里我们需要用到符合当前主板型号的设备树文件

    • 可以先用先用 sudo dmesg | grep kernel 指令查看当前主板使用的设备树

    • 比如,这里查询到的设备树文件是 tegra234-p3767-0004-p3768-0000-a0

      查看设备树文件

  • 将驱动中相同型号的 dtb 文件和 Image 文件复制到主板的 /boot 目录下

    sudo cp dtb/tegra234-p3767-0004-p3768-0000-a0.dtb /boot
    sudo cp Image /boot
  • 复制好文件后,修改 extlinux.conf 中启动的设备树文件

    • 复制并添加多一个启动标签,将其中 FDT 的文件路径改成复制进去的文件目录,并将默认的启动标签改为新添加的

      重要提醒

      修改启动配置文件时务必仔细检查,确认无误后再保存并重启系统。配置错误可能导致系统无法正常启动!

      sudo vi /boot/extlinux/extlinux.conf
    • vi 编辑器中,按 i 进入编辑模式,按 esc 退出编辑模式。退出编辑模式后,可以输入 :wq! 保存文件并退出。 修改 extilinux 文件

  • 保存好文件后,重启系统

快速测试

  • 检查摄像头是否有被正常识别

    sudo dmesg | grep connected

    如果有返回相关 /dev/video2 is connected 信息,表示摄像头有被正常识别

  • 可以用以下指令对摄像头做预览测试。

    • 预览测试需要连接 HDMI 或者 DP 屏幕,请确保屏幕已经正常连接并显示。
    • 注意将 video 设备号改成上一个步骤检测提示的设备号。
    • 注意根据摄像头的支持分辨率修改指令测试
    gst-launch-1.0 v4l2src device=/dev/video2 ! "video/x-raw, format=(string)UYVY, width=(int)1920, height=(int)1536" ! fpsdisplaysink video-sink=xvimagesink sync=false