Changes

Jump to navigation Jump to search
Line 4: Line 4:     
===Overview===
 
===Overview===
This guide shows how to use VEYE and CS series camera modules on Jetson Nano,Jetson Nano 2GB,TX2,AGX Xavier and Xavier NX.  Jetson SDK Version is
+
This guide shows how to use VEYE and CS series camera modules on Jetson Nano,Jetson Nano 2GB,TX2,TX2 NX,AGX Xavier and Xavier NX.  Jetson SDK Version is
    
*Jetpack4.2.2,L4T r32.2.1
 
*Jetpack4.2.2,L4T r32.2.1
Line 12: Line 12:  
*Jetpack4.5,L4T r32.5
 
*Jetpack4.5,L4T r32.5
 
*Jetpack4.5.1,L4T r32.5.1
 
*Jetpack4.5.1,L4T r32.5.1
 +
*Jetpack4.6,L4T r32.6.1
    
We provide two ways to do so: '''Prebuilt Binaries''' or '''Source Code. Yes, It's Open Source!'''
 
We provide two ways to do so: '''Prebuilt Binaries''' or '''Source Code. Yes, It's Open Source!'''
Line 33: Line 34:  
It is connected as shown in figure:
 
It is connected as shown in figure:
 
[[File:TX2-6CAM-YT2.0-3.5I.jpg|alt=TX2 Devkit 6 cameras connection|center|thumb|800x800px|'''TX2 Devkit 6 cameras connection''']]
 
[[File:TX2-6CAM-YT2.0-3.5I.jpg|alt=TX2 Devkit 6 cameras connection|center|thumb|800x800px|'''TX2 Devkit 6 cameras connection''']]
<br />
+
<br />'''Be sure to screw the ADP adapter board to the bottom board.'''
    
====NVIDIA TX2 AGX Xavier====
 
====NVIDIA TX2 AGX Xavier====
 
<br />
 
<br />
 
[[File:ADP-N1-V2.0 XAVIER 6CAM.jpg|link=http://wiki.veye.cc/index.php/File:ADP-N1-V2.0%20XAVIER%206CAM.jpg|alt=Connect VEYE cameras to AGX Xavier|center|thumb|800x800px|Connect VEYE cameras to AGX Xavier]]
 
[[File:ADP-N1-V2.0 XAVIER 6CAM.jpg|link=http://wiki.veye.cc/index.php/File:ADP-N1-V2.0%20XAVIER%206CAM.jpg|alt=Connect VEYE cameras to AGX Xavier|center|thumb|800x800px|Connect VEYE cameras to AGX Xavier]]
<br />
+
<br />'''Be sure to screw the ADP adapter board to the bottom board.'''
====NVIDIA Nano Xavier NX Devkit====
+
====NVIDIA Nano ,TX2 NX and Xavier NX Devkit====
 
The Xavier NX interface is compatible with raspberry pi and Jetson Nano. The connection mode is shown in figure:
 
The Xavier NX interface is compatible with raspberry pi and Jetson Nano. The connection mode is shown in figure:
 
[[File:Xavier NX connection with VEYE-MIPI-327.jpg|alt=Xavier NX connection with VEYE-MIPI-327|center|thumb|800x800px|Xavier NX connection with VEYE-MIPI-327]]
 
[[File:Xavier NX connection with VEYE-MIPI-327.jpg|alt=Xavier NX connection with VEYE-MIPI-327|center|thumb|800x800px|Xavier NX connection with VEYE-MIPI-327]]
Line 46: Line 47:  
[[File:Jetson nano to Veye327.jpg|link=http://wiki.veye.cc/index.php/File:Jetson%20nano%20to%20Veye327.jpg|alt=Jetson Nano A02 与VEYE模组连接|center|thumb|800x800px|VEYE327 connection with Jetson Nano A02]]
 
[[File:Jetson nano to Veye327.jpg|link=http://wiki.veye.cc/index.php/File:Jetson%20nano%20to%20Veye327.jpg|alt=Jetson Nano A02 与VEYE模组连接|center|thumb|800x800px|VEYE327 connection with Jetson Nano A02]]
   −
===Upgrade Jetson Nano, Jetson TX2, AGX Xavier and Xavier NX system===
+
===Upgrade Jetson Nano, Jetson TX2, TX2 NX,AGX Xavier and Xavier NX system===
    
====Overview====
 
====Overview====
Line 53: Line 54:  
In the Image, we added the camera driver, while the DTB indicates the camera model used. In general, you only need to use the Image and DTB, that we have prebuilt, and you don't need to build from source  when it is not necessary.
 
In the Image, we added the camera driver, while the DTB indicates the camera model used. In general, you only need to use the Image and DTB, that we have prebuilt, and you don't need to build from source  when it is not necessary.
   −
In particular, for Xavier NX, we provide a burning image of the TF card.
+
<s>In particular, for Xavier NX, we provide a burning image of the TF card.</s>
   −
====Burning the prebuilt Image to upgrade Jetson Nano and Xavier NX Devkit====
+
====<s>Burning the prebuilt Image to upgrade Jetson Nano and Xavier NX Devkit</s>====
'''''This method is no longer recommended because in this mode, the DTB partition reverts to the default value in some cases. It is recommended to use pre-compiled Image and DTB for driver upgrade.'''''
+
'''''<s>This method is no longer recommended because in this mode, the DTB partition reverts to the default value in some cases. It is recommended to use pre-compiled Image and DTB for driver upgrade.</s>'''''
   −
You can use the image prebuild by us to upgrade jetson Xavier NX system, which will support our camera.
+
<s>You can use the image prebuild by us to upgrade jetson Xavier NX system, which will support our camera.</s>
   −
Using whole prebuilt image
+
<s>Using whole prebuilt image</s>
   −
*download :
+
*<s>download :</s>
   −
baiduyun:https://pan.baidu.com/s/1sWrcfEOivjuQ7T7P5bVcng
+
<s>baiduyun:https://pan.baidu.com/s/1sWrcfEOivjuQ7T7P5bVcng</s>
   −
google driver:https://drive.google.com/drive/folders/1KHSMTdyw-ZczR1yJPj-5y9eIv7izbgt3?usp=sharing
+
<s>google driver:https://drive.google.com/drive/folders/1KHSMTdyw-ZczR1yJPj-5y9eIv7izbgt3?usp=sharing</s>
   −
If Baidu cloud disk download is too slow, you can contact our company customer service ''xumm@csoneplus.com'' to obtain.
+
<s>If Baidu cloud disk download is too slow, you can contact our company customer service ''xumm@csoneplus.com'' to obtain.</s>
   −
*How to burn<code><nowiki/></code>
+
*<s>How to burn</s><code><nowiki/></code>
   −
refer to [https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit#write Official document]
+
<s>refer to [https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit#write Official document]</s>
    
====BSP package introduction====
 
====BSP package introduction====
Line 98: Line 99:  
=====TX2 Devkit=====
 
=====TX2 Devkit=====
 
<code>tegra186-quill-p3310-1000-c03-00-base.dtb</code>
 
<code>tegra186-quill-p3310-1000-c03-00-base.dtb</code>
 +
 +
===== TX2 NX(p3509-0000 carrier board) =====
 +
use the same carrier board with XAVIER NX Devkit
 +
 +
<code>tegra186-p3636-0001-p3509-0000-a01.dtb</code>
 
=====AGX XAVIER=====
 
=====AGX XAVIER=====
 
<code>tegra194-p2888-0001-p2822-0000.dtb</code>
 
<code>tegra194-p2888-0001-p2822-0000.dtb</code>
 
=====XAVIER NX Devkit=====
 
=====XAVIER NX Devkit=====
 
<code>tegra194-p3668-all-p3509-0000.dtb</code>
 
<code>tegra194-p3668-all-p3509-0000.dtb</code>
====Upgrade Jetson Nano and Xavier NX 、AGX Xavierwithout HOST PC====
+
====Upgrade Jetson Nano and Xavier NX 、AGX Xavier without HOST PC====
Note: AGX Xavie Jetpack version >= 4.5 , support this upgrade mode. Earlier versions have not been verified and are not recommended.
+
Note: AGX Xavie Jetpack version >= 4.4 , support this upgrade mode. Earlier versions have not been verified and are not recommended.
    
=====Check the current L4T version=====
 
=====Check the current L4T version=====
Line 144: Line 150:     
<code>FDT /boot/<DTB file name></code>
 
<code>FDT /boot/<DTB file name></code>
 +
 +
Note: <DTB file name> should be replaced with the corresponding dtb name of the mainboard, ensure that the file specified in the FDT line actually exists correctly.
    
Effective after restart.
 
Effective after restart.
Line 149: Line 157:  
====Upgrade Jetson Board using Host PC====
 
====Upgrade Jetson Board using Host PC====
   −
=====Setting Up the Host PC Environment And Burn the standard Image=====
+
=====Burn the standard Image=====
 
'''''Note: if your Jetson board has correctly burned the standard version Image, you can skip this step.'''''
 
'''''Note: if your Jetson board has correctly burned the standard version Image, you can skip this step.'''''
   −
*Cross-compiling Toolchain
+
You can burn the standard Image using SDK Manager or following the steps below.
 
  −
Please refer to this [https://docs.nvidia.com/jetson/l4t/index.html#page/Tegra%2520Linux%2520Driver%2520Package%2520Development%2520Guide%2Fxavier_toolchain.html%23wwpID0ESHA link] to install toolchain on your Host PC.
  −
 
  −
*L4T source code and Rootfs
  −
 
  −
You could use SDK Manager or [https://developer.nvidia.com/embedded/downloads directly download] to get source code.
  −
 
  −
Sync code as this if you use SDK Manager:
  −
 
  −
''- Jetpack4.2.2''
  −
 
  −
<code>./source_sync.sh -t tegra-l4t-r32.2.1</code>
  −
 
  −
''- Jetpack4.3''
  −
 
  −
<code>./source_sync.sh -t tegra-l4t-r32.3.1</code>
  −
 
  −
''- Jetpack4.4''
  −
 
  −
<code>./source_sync.sh -t tegra-l4t-r32.4.3</code>
  −
 
  −
''- Jetpack4.4.1''
  −
 
  −
<code>./source_sync.sh -t tegra-l4t-r32.4.4</code>
  −
 
  −
''- Jetpack4.5''
  −
 
  −
<code>./source_sync.sh -t tegra-l4t-r32.5</code>
  −
 
  −
*Setting Up the Environment
  −
 
  −
Assume SDK install directory is <TOPDIR>,source code is in $L4T_DIR/sources directory.
  −
 
  −
''- Nano@Jetpack4.2.2''
  −
 
  −
<code>export TOP_DIR=<absolute path to top dir;in my case is /home/xumm/nvidia/nvidia_sdk/JetPack_4.2.2_Linux_GA_P3448/></code>
  −
 
  −
''- Nano@Jetpack4.3''
  −
 
  −
<code>export TOP_DIR=<absolute path to top dir;in my case is /home/xumm/nvidia/nvidia_sdk/JetPack_4.3_Linux_JETSON_NANO_DEVKIT/></code>
     −
''- Nano@Jetpack4.4''
+
* Set PATH
   −
<code>export TOP_DIR=<absolute path to top dir;in my case is /home/xumm/nvidia/nvidia_sdk/JetPack_4.4_Linux_JETSON_NANO_DEVKIT/></code>
+
Assume SDK install directory is <TOPDIR>.
   −
''- Nano@Jetpack4.4.1''
+
<code>export TOP_DIR=<absolute path to top dir accroding to your jetpack version and board name;for example /home/xumm/nvidia/nvidia_sdk/JetPack_4.5_Linux_JETSON_XAVIER_NX_DEVKIT/></code>
   −
<code>export TOP_DIR=<absolute path to top dir;in my case is /home/xumm/nvidia/nvidia_sdk/JetPack_4.4.1_Linux_JETSON_NANO_DEVKIT/></code>
+
export L4T_DIR=$TOP_DIR/Linux_for_Tegra
 
  −
''- Nano 2GB@Jetpack4.4.1''
  −
 
  −
<code>export TOP_DIR=<absolute path to top dir;in my case is /home/xumm/nvidia/nvidia_sdk/JetPack_4.4.1_Linux_JETSON_NANO_2GB_DEVKIT/></code>
  −
 
  −
''- TX2@Jetpack4.2.2''
  −
 
  −
<code>export TOP_DIR=/home/xumm/nvidia/nvidia_sdk/JetPack_4.2.2_Linux_GA_P3310/</code>
  −
 
  −
''- TX2@Jetpack4.3''
  −
 
  −
<code>export TOP_DIR=/home/xumm/nvidia/nvidia_sdk/JetPack_4.3_Linux_P3310/</code>
  −
 
  −
''- TX2@Jetpack4.4''
  −
 
  −
<code>export TOP_DIR=/home/xumm/nvidia/JetPack_4.4_Linux_JETSON_TX2/</code>
  −
 
  −
''- AGX XavierJetpack4.2.2''
  −
 
  −
<code>export TOP_DIR=/home/xumm/nvidia/nvidia_sdk/JetPack_4.2.2_Linux_GA_P2888/</code>
  −
 
  −
''- AGX XavierJetpack4.3''
  −
 
  −
<code>export TOP_DIR=/home/xumm/nvidia/nvidia_sdk/JetPack_4.3_Linux_P2888/</code>
  −
 
  −
''- AGX XavierJetpack4.4''
  −
 
  −
<code>export TOP_DIR=/home/xumm/nvidia/nvidia_sdk/JetPack_4.4_Linux_JETSON_AGX_XAVIER/</code>
  −
 
  −
''- AGX XavierJetpack4.4.1''
  −
 
  −
<code>export TOP_DIR=/home/xumm/nvidia/nvidia_sdk/JetPack_4.4.1_Linux_JETSON_AGX_XAVIER/</code>
  −
 
  −
- ''Xavier NX Jetpack4.4''
  −
 
  −
<code>export TOP_DIR=/home/xumm/nvidia/nvidia_sdk/JetPack_4.4_Linux_JETSON_XAVIER_NX_DEVKIT</code>
  −
 
  −
- ''Xavier NX Jetpack4.4.1''
  −
 
  −
<code>export TOP_DIR=/home/xumm/nvidia/nvidia_sdk/JetPack_4.4.1_Linux_JETSON_XAVIER_NX_DEVKIT</code>
  −
 
  −
- Common part
  −
 
  −
<code>export L4T_DIR=$TOP_DIR/Linux_for_Tegra</code>
  −
 
  −
<code>export LOCALVERSION=-tegra</code>
  −
 
  −
<code>export LDK_ROOTFS_DIR=$TOP_DIR/Linux_for_Tegra/rootfs</code>
  −
 
  −
<code>export ARCH=arm64</code>
  −
 
  −
<code>export CROSS_COMPILE=aarch64-linux-gnu-</code>
  −
 
  −
<code>export CROSS32CC=arm-linux-gnueabihf-gcc</code>
  −
 
  −
<code>export TEGRA_KERNEL_OUT=$L4T_DIR/sources/kernel/out_kernel</code>
  −
 
  −
<code>export KERNEL_PATH=$L4T_DIR/sources/kernel/out_kernel</code>
  −
 
  −
<code>export NVIDIA_PATH=$L4T_DIR/sources/kernel/nvidia</code>
  −
 
  −
<code>export NANO_DTS_PATH=$L4T_DIR/sources/hardware/nvidia/platform/t210/</code>
  −
 
  −
<code>export TX2_DTS_PATH=$L4T_DIR/sources/hardware/nvidia/platform/t18x</code>
  −
 
  −
<code>export XAVIER_DTS_PATH=$L4T_DIR/sources/hardware/nvidia/platform/t19x</code>
  −
 
  −
<code>cd $L4T_DIR/sources/kernel/kernel-4.9/</code>
      
*Build default image, flashing to Jetson Board, prepare L4T environment
 
*Build default image, flashing to Jetson Board, prepare L4T environment
Line 287: Line 187:     
<code>sudo ./flash.sh jetson-tx2 mmcblk0p1</code>
 
<code>sudo ./flash.sh jetson-tx2 mmcblk0p1</code>
 +
 +
''- TX2 NX(p3509-0000 carrier board)''
 +
 +
<code>sudo ./flash.sh jetson-xavier-nx-devkit-tx2-nx mmcblk0p1</code>
    
''- AGX Xavier''  
 
''- AGX Xavier''  
Line 355: Line 259:     
<code>sudo ./flash.sh -r -k kernel-dtb jetson-tx2 mmcblk0p1</code>
 
<code>sudo ./flash.sh -r -k kernel-dtb jetson-tx2 mmcblk0p1</code>
 +
 +
''- TX2 NX(p3509-0000 carrier board)''
 +
 +
<code>sudo ./flash.sh -r -k kernel-dtb jetson-xavier-nx-devkit-tx2-nx mmcblk0p1</code>
    
''- AGX Xavier''
 
''- AGX Xavier''
Line 371: Line 279:  
<code>ls /sys/bus/i2c/drivers/</code>
 
<code>ls /sys/bus/i2c/drivers/</code>
   −
There should have  veye327 csx307 cssc132 directory.
+
There should have  veye327 veyecam csx307 cssc132 directory.
 
=====For DTB=====
 
=====For DTB=====
 
DTB varies from platform  and from camera module.
 
DTB varies from platform  and from camera module.
Line 386: Line 294:     
<code>ls /proc/device-tree/i2c@3180000/tca9548@70/i2c@*</code>
 
<code>ls /proc/device-tree/i2c@3180000/tca9548@70/i2c@*</code>
 +
 +
or
 +
 +
<code>ls /proc/device-tree/i2c@3180000/tca9548@77/i2c@*</code>
    
- AGX Xavier
 
- AGX Xavier
Line 391: Line 303:  
<code>ls /proc/device-tree/i2c@3180000/tca9548@70/i2c@*</code>
 
<code>ls /proc/device-tree/i2c@3180000/tca9548@70/i2c@*</code>
   −
- Xavier NX
+
or
 +
 
 +
<code>ls /proc/device-tree/i2c@3180000/tca9548@77/i2c@*</code>
 +
 
 +
- Xavier NX and TX2 NX(p3509-0000 carrier board)
    
<code>ls /proc/device-tree/cam_i2cmux/i2c@*</code>
 
<code>ls /proc/device-tree/cam_i2cmux/i2c@*</code>
    
You should be able to find the camera model you used.
 
You should be able to find the camera model you used.
====Building from Source====
+
====Build the drivers from source====
 
Please refer to: [[VEYE CS Camera source for Jetson|Nvidia Jetson platform VEYE and CS series camera driver source code compilation guide]].
 
Please refer to: [[VEYE CS Camera source for Jetson|Nvidia Jetson platform VEYE and CS series camera driver source code compilation guide]].
   Line 404: Line 320:  
Run the following command to confirm whether the camera is probed.
 
Run the following command to confirm whether the camera is probed.
   −
*For VEYE-MIPI-327
+
*For VEYE-MIPI-327(using VEYE-MIPI-327 dtb)
    
<code>dmesg | grep veye327</code>  
 
<code>dmesg | grep veye327</code>  
   −
The output message appears as shown below.:
+
The output message appears as shown below:
    
<code>Detected VEYE327 sensor</code>
 
<code>Detected VEYE327 sensor</code>
    
<code>subdev veye327 X-003b bound</code>
 
<code>subdev veye327 X-003b bound</code>
 +
 +
*VEYE-MIPI-X(using VEYE-MIPI-CAM2M dtb)
 +
 +
<code>dmesg | grep veye</code>  
 +
 +
The output message appears as shown below:
 +
 +
<code>camera id is veyecam</code>
 +
 +
<code>sensor is IMX327/IMX462/IMX385</code>
 +
 +
<code>subdev veyecam X-003b bound</code>
    
*For CS-MIPI-IMX307
 
*For CS-MIPI-IMX307
Line 501: Line 429:  
For AGX-Xavier and TX2, ADP-N1 has 6 MIPI CSI-2 interface [A-F],the corresponding i2c address is[30-35].
 
For AGX-Xavier and TX2, ADP-N1 has 6 MIPI CSI-2 interface [A-F],the corresponding i2c address is[30-35].
   −
For Xavier NX, the corresponding i2c address is 9 and10.
+
For Xavier NX, TX2 NX,the corresponding i2c address is 9 and10.
   −
For Nano A02, the corresponding i2c address is 6.
+
For Nano A02,Nano 2GB, the corresponding i2c address is 6.
    
For Nano B01, the corresponding i2c address is 7 and 8.
 
For Nano B01, the corresponding i2c address is 7 and 8.
Line 509: Line 437:  
It is also the same as the X part of dmesg message:
 
It is also the same as the X part of dmesg message:
   −
<code>subdev veye327 X-003b bound</code>
+
<code>subdev veyeX X-003b bound</code>
    
<code>subdev csimx307 X-003b bound</code>
 
<code>subdev csimx307 X-003b bound</code>

Navigation menu