Galileo2 module Linux driver
|
|
|
|
Introduction to Galileo2 module driver for Jetson
Galileo-2 (G2 or Galileo 2) is an area color image sensor, which has features like the true zoom concept to support zooming functionality by windowing and scaling the image instead of using the optically variable field of view, incorporating an AD converter. The optical format is 2/3 inch, of which small size is suitable for built-in camera module application. The use of the CMOS process makes possible low power consumption operations. This sensor provides superb picture quality thanks to Toshiba’s advanced sensor technology. It has an OIS system and Auto Focus system as well. In this wiki page you will find the most relevant information about the driver for the G2 sensor:
Enable driver
The driver was developed for kernel 3.10.67 using NVIDIA kernel source l4t-r23.2.
1. Follow the instructions in Compiling Jetson TX1 source code (Downloading the code) to get the kernel source code.
2. Once you have the source code, apply the following two patches if you haven't yet, for fixing kernel errors during compilation.
- kernel_r7_asm.patch
- logical_comparison.patch
3. Apply the driver patches:
- 0001-ARM64-adding-OV5693-V4L2-on-E3326-jetson_cv.patch
- 0002-Galileo2-SMIA++-v4l2-driver.patch
- 0003-Galileo2-SMIA++-dtb.patch
- 0004-fix-continuos-clock-in-v4l2-driver.patch
- 0005-add-SGRBG8-support-vi2.patch
4. Follow the instructions in Compiling Jetson TX1 source code (Build Kernel) for building the kernel, and then flash the image.
Make sure to enable g2 smiapp driver support and soc_camera support, and disable platform camera support.
make menuconfig
-> Device Drivers -> Multimedia support -> Sensors used on soc_camera driver -> <M>Soc Camera Smiapp support
-> Device Drivers -> Multimedia support ->V4L platform devices -> <*> SoC camera support -> < > platform camera support
Mount the kernel module
sudo rmmod nvhost_vi sudo modprobe smiapp sudo modprobe tegra_camera
Features
Sensor Features
Key features of Toshiba’s Galileo-2 sensor:
- 41MP, 1.12um pixel size high-quality sensor
- The best-in-class SNR10.is achievable with a BSI sensor solution.
- Evolutionally improvement from Galileo-i.
- Extraordinary high-quality image processing.
- Very low power and high-performance operation
Driver features
- Based on the Smiapp driver implementation for media-controller
- Focus Control
- Exposure control
- Gain control
- Works at 1080p,720p,4k, and 8k binned resolutions
- Cropping is supported
- Works for Raw10 and Raw8 formats
=Current issues=
- Framerate drops when trying to capture over 80fps in some binnned resolutions
Examples
Gstreamer pipelines
- Test capture
gst-launch-1.0 -vvv v4l2src ! 'video/x-bayer, width=(int)1920, height=(int)1080, format=(string)rggb, framerate=(fraction)30/1' ! fakesink silent=false
- Save captured frames
gst-launch-1.0 -vvv v4l2src num-buffers=10 ! 'video/x-bayer, width=(int)1920, height=(int)1080, format=(string)rggb, framerate=(fraction)30/1' ! multifilesink location=test%d.raw -v
- Test cropping
gst-launch-1.0 v4l2src crop=crop,left=10,top=257,width=1920,height=1080 ! 'video/x-bayer, width=(int)1920, height=(int)1080, format=(string)rggb, framerate=(fraction)30/1' ! fakesink silent=false gst-launch-1.0 v4l2src crop=crop,left=100,top=257,width=1920,height=1080 ! 'video/x-bayer, width=(int)1920, height=(int)1080, format=(string)rggb, framerate=(fraction)30/1' ! multifilesink location=test%d.raw -v
Yavta
- Capture 1080p frames
./yavta /dev/video0 -c10 -n1 -s1920x1080 -fSBGGR8 -Fov.raw
- Capture 4K frames
./yavta /dev/video0 -c10 -n1 -s3840x2160 -fSBGGR8 -Fov.raw
For direct inquiries, please refer to the contact information available on our Contact page. Alternatively, you may complete and submit the form provided at the same link. We will respond to your request at our earliest opportunity.
Links to RidgeRun Resources and RidgeRun Artificial Intelligence Solutions can be found in the footer below.