12.3MP Camera Module for NVIDIA Jetson Nano Wiki- DFRobot

Introduction

This high-quality 12.3MP camera module adopts Sony's IMX477R chip and requires a C or CS-mount lens to work. It is compatible with NVIDIA Jetson Nano series and Raspberry Pi CM3 compute module. The camera module offers higher resolution (12.3MP) and higher sensitivity (nearly 50% larger area per pixel for improved low-light performance) than IMX219 cameras, which can be used in industrial and consumer applications.

Features

Specification

Settings for Jetson Nano

Requirements

Step 1. Connect the camera, lens and Jetson Nano correctly, then power on the Jetson Nano module.

Connection

Step 2. Download the Debian software pack of Jetson Nano and unzip to Jetson Nano.

Unzip

Step 3. Input the following commands to install Debian

# Enter the debian_nano file
cd ....../debian_nano/jetpack-4.5/
sudo apt-get install --reinstall ./nvidia-l4t-kernel_4.9.201-tegra-32.5.0-20210115145440_arm64.deb
sudo apt-get install --reinstall ./nvidia-l4t-kernel-dtbs_4.9.201-tegra-32.5.0-20210115145440_arm64.deb

Step 4. Revise the file /boot/extlinux/extlinux.conf to make the changes take effect.

TIMEOUT 30
DEFAULT primary

MENU TITLE L4T boot options

LABEL primary
    MENU LABEL primary kernel
    LINUX /boot/Image
    INITRD /boot/initrd
    APPEND ${cbootargs} quiet root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0
    FDT /boot/tegra210-p3448-0000-p3449-0000-b00.dtb
TIMEOUT 30
DEFAULT primary

MENU TITLE L4T boot options

LABEL primary
    MENU LABEL primary kernel
    LINUX /boot/Image
    INITRD /boot/initrd
    APPEND ${cbootargs} quiet root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0
    FDT /boot/tegra210-p3448-0000-p3449-0000-a02.dtb

Step 5. The module needs to be restarted for the changes to make effect.

sudo reboot

Settings for Jetson Xavier NX

The way to set Jetson Xavier NX is basically the same as that of the Jetson Nano.

Step 1. Connect the camera, lens and Jetson Xavier NX correctly, then power on the Jetson Nano module.

Step 2. Download the Debian software pack of Jetson Xavier NX and unzip to Jetson Xavier NX.

Step 3. Input the following commands to install Debian

# Enter the debian_nano file
cd ....../debian_nx/jetpack-4.5/
sudo apt-get install --reinstall ./nvidia-l4t-kernel_4.9.201-tegra-32.5.0-20210115151051_arm64.deb
sudo apt-get install --reinstall ./nvidia-l4t-kernel-dtbs_4.9.201-tegra-32.5.0-20210115151051_arm64.deb

Step 4. Revise the file /boot/extlinux/extlinux.conf to make the changes take effect.

Replace the contents of /boot/extlinux/extlinux.conf with the following:

TIMEOUT 30
DEFAULT primary

MENU TITLE L4T boot options

LABEL primary
    MENU LABEL primary kernel
    LINUX /boot/Image
    INITRD /boot/initrd
    APPEND ${cbootargs} quiet root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyTCU0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 
    FDT /boot/tegra194-p3668-all-p3509-0000.dtb

Step 5. The module needs to be restarted for the changes to make effect.

sudo reboot

Shooting Commands

  1. Real-time screen
SENSOR_ID=0 # 0 for CAM0 and 1 for CAM1 ports
FRAMERATE=60 # Framerate can go from 2 to 60 for 1920x1080 mode
gst-launch-1.0 nvarguscamerasrc sensor-id=$SENSOR_ID ! "video/x-raw(memory:NVMM),width=1920,height=1080,framerate=$FRAMERATE/1" ! nvvidconv ! nvoverlaysink

Press Ctrl+C to end.

SENSOR_ID=0 # 0 for CAM0 and 1 for CAM1 ports
FRAMERATE=30 # Framerate can go from 2 to 30 for 4032x3040 mode
gst-launch-1.0 nvarguscamerasrc sensor-id=$SENSOR_ID ! "video/x-raw(memory:NVMM),width=4032,height=3040,framerate=$FRAMERATE/1" ! nvvidconv ! "video/x-raw(memory:NVMM),width=1920,height=1080,framerate=$FRAMERATE/1" ! nvoverlaysink

Press Ctrl+C to end.

  1. Record video in MP4
SENSOR_ID=0 # 0 for CAM0 and 1 for CAM1 ports
FRAMERATE=60 # Framerate can go from 2 to 60 for 1920x1080 mode
gst-launch-1.0 -e nvarguscamerasrc sensor-id=$SENSOR_ID ! "video/x-raw(memory:NVMM),width=1920,height=1080,framerate=$FRAMERATE/1" ! nvv4l2h264enc ! h264parse ! mp4mux ! filesink location=rpi_v3_imx477_cam$SENSOR_ID.mp4

Press Ctrl+C to end.

SENSOR_ID=0 # 0 for CAM0 and 1 for CAM1 ports
FRAMERATE=30 # Framerate can go from 2 to 30 for 4032x3040 mode
gst-launch-1.0 -e nvarguscamerasrc sensor-id=$SENSOR_ID ! "video/x-raw(memory:NVMM),width=4032,height=3040,framerate=$FRAMERATE/1" ! nvv4l2h264enc ! h264parse ! mp4mux ! filesink location=rpi_v3_imx477_cam$SENSOR_ID.mp4

Press Ctrl+C to end.

  1. Shoot in JPEG
SENSOR_ID=0 # 0 for CAM0 and 1 for CAM1 ports
FRAMERATE=60 # Framerate can go from 2 to 60 for 1920x1080 mode
NUMBER_OF_SNAPSHOTS=20
gst-launch-1.0 -e nvarguscamerasrc num-buffers=$NUMBER_OF_SNAPSHOTS sensor-id=$SENSOR_ID ! "video/x-raw(memory:NVMM),width=1920,height=1080,framerate=$FRAMERATE/1" ! nvjpegenc ! multifilesink location=%03d_rpi_v3_imx477_cam$SENSOR_ID.jpeg
SENSOR_ID=0 # 0 for CAM0 and 1 for CAM1 ports
FRAMERATE=30 # Framerate can go from 2 to 30 for 4032x3040 mode
NUMBER_OF_SNAPSHOTS=20
gst-launch-1.0 -e nvarguscamerasrc num-buffers=$NUMBER_OF_SNAPSHOTS sensor-id=$SENSOR_ID ! "video/x-raw(memory:NVMM),width=4032,height=3040,framerate=$FRAMERATE/1" ! nvjpegenc ! multifilesink location=%03d_rpi_v3_imx477_cam$SENSOR_ID.jpeg

FAQ

For any questions, advice or cool ideas to share, please visit the DFRobot Forum.

More Documents

DFshopping_car1.png Get 12.3MP Camera Module for Jetson Nano from DFRobot Store or DFRobot Distributor.

Turn to the Top