Orin can not access /dev/video0

Hi All,

I got a orin yesterday, so I srarted to reflash it by sdkmanager.
And orin successfully reflashed.

So I use OV5693 to try, But I can not access /dev/video0

What should I do next?

hello syan,

please check r34.1.1 release note,

For the present, IMX274 Dual is the default camera for Jetson AGX Orin Developer Kit.

you may try to launch the Jetson-IO tool and configure the DTB overlay to make ov5693 camera works.
BTW, is it AGX Orin? AFAIK, you’ll need to disassembler the DevKit to have camera board insert to the camera connector.

Hi Jerry,
Thanks for your reply.

I followed r34.1.1 release note, but I can not use Jetson-IO tool to change default camera…

So, I should disassembler the DevKit just as you say.

Then I follow 4.1.5 to change the default camera, but I can not find this file to start it

hardware/nvidia/platform/t23x/concord-dts/ tegra234-p3701-0000-p3737-
0000.dts

Does directory is right?

hello syan,

may I know what’s the failure with Jetson-IO?
yes, that’s the dtb file, i.e. tegra234-p3701-0000-p3737-0000.dtb for AGX Orin.

Hi Jerry,
I missed some steps to use Jetson-IO tool.

Now I finished

1.) Go to the directory /opt/nvidia/jetson-io/Headers.
2.) Open csi-agx.py.
3.) Change Xavier to Orin.
4.) Save and close the file.

then I want to compile the .dts file to generate a .dtbo file…

At Host device’s path Linux_for_Tegra/source/public/kernel/kernel-5.10
type command

make ARCH=arm64 O=${KERNEL__DIR} -j12

But got error

make: *** [Makefile:213: __sub-make] Error_2

hello syan,

may I know how you obtain the kernel sources, are you using source_sync.sh?
please try download R34.1.1 public_sources.tbz2, and use the GCC-9.3 toolchain to build the kernel sources .
here’re steps for your reference,
$ export TEGRA_KERNEL_OUT=/home/user/Orin/r34.1.1_build
$ export CROSS_COMPILE_AARCH64=/home/user/toolchain_gcc_9.3/bin/aarch64-buildroot-linux-gnu-
$ cd Linux_for_Tegra/source/public
$ ./nvbuild.sh -o $TEGRA_KERNEL_OUT

Hi Jerry,
I’m using toolchain to build kernel.
And I found my GCC version is 11.3.
I can succeesully build kernel dtb after downloading GCC-9.3

Build kernel command as same as Xavier except GCC path.

Now I want to reflash orin by this command

./flash.sh  -k kernel-dtb jetson-agx-orin-devkit mmcblk0p1

But occur error

Error:  Return Value 13
Command tegradevflash_v2 --earse kernel-dtb
Failed to flash/read t186ref.

hello syan,

the partition name has changed as you can see via Orin’s flash messages,
for example,

[ 650.2811 ] Writing partition A_kernel-dtb with kernel_tegra234-p3701-0000-p3737-0000_with_odm.dtb [ 307630 bytes ]
[ 650.2836 ] [................................................] 100%
[ 651.6726 ] Writing partition B_kernel-dtb with kernel_tegra234-p3701-0000-p3737-0000_with_odm.dtb [ 307630 bytes ]
[ 651.6747 ] [................................................] 100%

hence, please update the commands as… -r -k A_kernel-dtb to update orin’s kernel-dtb partition.
thanks

Hi Jerry,
I update command as

sudo ./flash.sh -r -k A_kernel-dtb jetson-agx-orin-devkit mmcblk0p1

It says file does not exist…

hello syan,

it’s the -r options to skips building system.img; reuse the existing one. please check whether you have system.img created on your local host. you may remove -r options for the first time running this.

Hi Jerry,

It can work and successifully flash orin by

sudo ./flash.sh -k A_kernel-dtb jetson-agx-orin-devkit mmcblk0p1

But I still can not access /dev/video0 by ov5693

I followed 4.1.5 to change default camera:

Step 1.) update this file

hardware/nvidia/platform/t23x/concord-dts/ tegra234-p3701-0000-p3737-
0000.dts

Step 2.) add ov5693

#include "cvb/tegra234-p3737-0000-camera-e3333-a00.dtsi"

Step 3.) complie kernel and flashed orin

When host device shows successifully, I type ls -la /dev/vid* on orin

It strill can not work…

hello syan,

is the device register correctly? could you please gather the complete logs via serial console for reference,
thanks

Hi Jerry,

Do you mean my step 3.) compile kernel logs?

compilerLog.txt (498.2 KB)

hello syan,

no, I meant the bootloader logs and kernel init messages while system boot-up.
please setup serial console and gather the logs for reference, thanks

Hi Jerry,

I use demsg to get some log…
I’m not sure this log is what you want…?
dmesg.txt (82.5 KB)

hello syan,

[    7.598816] tegra194-vi5 13e40000.host1x:vi0@15c00000: initialized
[    7.599582] (NULL device *): fops function table already registered

it looks NULL devices.
may I know what’s the camera board you’re using, could you please take a snapshot and share the camera board naming.

Hi Jerry,

I think it is ov5693

1 Like

hello syan,

yes, it’s the ov5693 sensor module, but this is the camera board named e3326. this is not supported currently.

Hi Jerry,
I have checked the different of e3326 on Xavier and e3333 on Orin.
And I found e3326 just have 1 node and e3333 have 6 node.

i2c@0{
.....
};

i2c@1{
.....
};

....

If I delete other 5 node, does e3326 can work?
Because I just have e3326 this camera board…

Or you have the other way let orin support it?

hello syan,

they’re different, there’s i2cmux with e3333 to expand the i2c-bus for six camera nodes; but e3326 don’t.
we don’t enable e3326 since it cannot connect to Orin platform directly, however, you’ve a flex cable to extend the camera connection.