NVIDIA Jetson kernel driver for Sony IMX462 — a 2 MP starvis back side illuminated CMOS sensor optimized for low-light and night-vision applications.
- 2-lane MIPI CSI-2
- 10-bit RAW output
- 1920×1080 @ 30 fps
- HCG (High Conversion Gain) mode for improved low-light SNR
Note
Currently, only cam0 port support is implemented.
Install required tools:
sudo apt install -y --no-install-recommends dkmsClone this repository:
cd ~
git clone https://github.com/Kurokesu/imx462-mipi-nvidia.git
cd imx462-mipi-nvidia/Run setup script:
sudo ./setup.shSetup script:
- Fetches NVIDIA device tree headers required for build
- Builds and installs kernel module via DKMS
- Builds and copies device tree overlay (
.dtbo) to/boot - Copies ISP calibration overrides to
/var/nvidia/nvcam/settings/
Use Jetson-IO to configure the CSI connector:
sudo /opt/nvidia/jetson-io/jetson-io.pyNavigate through the menu:
- Configure Jetson CSI Connector (named "22pin" on 6.2.2, "24pin" on 6.2.1)
- Configure for compatible hardware
- Select Camera IMX462-A
- Save pin changes
- Save and reboot to reconfigure pins
After reboot, verify sensor is detected:
sudo dmesg | grep imx462gst-launch-1.0 -e nvarguscamerasrc sensor-id=0 ! \
'video/x-raw(memory:NVMM),width=1920,height=1080,framerate=30/1' ! \
queue ! nvvidconv ! queue ! nveglglessinknvgstcapture-1.0 --sensor-id 0Install v4l-utils:
sudo apt install -y v4l-utilsStream raw data to file:
v4l2-ctl -d /dev/video0 --set-fmt-video=width=1920,height=1080,pixelformat=RG10 --stream-mmap --stream-to imx462_1080p.raw --stream-count=1 --stream-skip=10 --verboseView raw Bayer file:
python3 view_raw.py ./imx462_1080p.rawIMX462 supports High Conversion Gain (HCG) mode for improved signal-to-noise ratio in low-light conditions. Default is Low Conversion Gain (LCG).
Enable HCG:
echo 1 | sudo tee /sys/module/nv_imx462/parameters/hcg_modeSwitch back to LCG:
echo 0 | sudo tee /sys/module/nv_imx462/parameters/hcg_modeIMX462 has a built-in test pattern generator for verifying data validity.
Enable test pattern:
# Horizontal color‑bar chart example (test_mode = 2)
echo 2 | sudo tee /sys/module/nv_imx462/parameters/test_modeTurn test pattern off:
echo 0 | sudo tee /sys/module/nv_imx462/parameters/test_mode| Test pattern code | Description |
|---|---|
| 0 | Off |
| 1 | Sequence Pattern 1 |
| 2 | Horizontal Color-bar Chart |
| 3 | Vertical Color-bar Chart |
| 4 | Sequence Pattern 2 |
| 5 | Gradation Pattern 1 |
| 6 | Gradation Pattern 2 |
| 7 | 000h/555h Toggle Pattern |
For manual builds without DKMS:
make # build everything (dtbo + kernel module)
sudo make install # copy dtbo to /boot, rmmod + insmodNote
Module is loaded immediately via insmod but won't persist across reboots. Use sudo ./setup.sh for permanent installation via DKMS.
Individual targets:
make dtbo # build only the device tree overlay
make module # build only the kernel module
make clean # remove build artifactsBuild artifacts are placed in ./build.

