Orin Nano Streaming issues between cam0 and cam1 port in 2lane mode

Hi,
I am using orin nano developer kit for integrating a camera sensor. Here I am finding an issue while trying to stream via argus application, i.e using calculated pixel clock value(resolution*fps) I can able to get the stream in cam1 port but with the same value I cannot get the stream in cam0 port. And I have even tried with many other pixel clock values that is by using other calculation methods that you have given in the developer guide, even then I could not get the stream via argus application only in cam0. Below is the calculation method I have followed.
pixel_clk_hz` = sensor output size Ă— frame rate
= (4072 * 3176)*12
= 155192064
is there anything I am missing or I need to handle specifically?

hello naveenkumar.kamalakannan,

please note that there’s lane polarity, CSI0 D1 and CSI1 D0 P/N will always been swizzle for P/N.
hence, please review the sensor device tree, you may configure lane_polarity for a polarity swap on any lane.
you may see-also reference driver, such as tegra234-camera-rbpcv2-imx219.dtsi to configure the polarity settings.
thanks

Hi JerryChang

Thank you for your response.
Yes I have seen that lane_polarity parameter and I have already enabled it in my sensor device tree, here I can able to get the stream via V4L2 in cam0 port, the issue is I cannot able to get the stream via argus_application. When I start the stream with argus_application I can only able to see black screen in cam0 port and I am not even getting any logs in the dmesg, but with V4L2 it works fine.

Thanks.

hello naveenkumar.kamalakannan,

may I know the kernel failure messages when you start the stream with argus_application?
besides, please also putting argus daemon in the foreground to obtain Argus daemon logs,
for example,

$ sudo su 
# pkill nvargus-daemon
# nvargus-daemon
or.. # nvargus-daemon 2>&1 | tee argus-output.log

Hi JerryChang

Below you can find the logs of nvargus-daemon log, trace log and dmesg log .

nvargus-daemon log :
port0_argus-output.log (3.2 KB)

trace log:
port0_trace.log (6.5 KB)

dmesg log:
port0_dmesg.log (543 Bytes)

Thanks.

hello naveenkumar.kamalakannan,

according to the failure,
there’s timeout for waiting frame-start, it doubts sensor did not output frames to CSI channel.
since you’re able to fetch the stream by v4l standard ioctl. you may examine the settings within tegra-camera-platform{}.

BTW,
how you connect these cam0 and cam1 camera sensors, are you using a customize carrier board?

Hi JerryChang

  1. Yes I have examined the tegra-camera-platform{} , I think it’s almost correct, below you can find those settings that I have used in my sensor device tree.

tcp: tegra-camera-platform {
compatible = “nvidia, tegra-camera-platform”;
num_csi_lanes = <4>;
max_lane_speed = <1500000>;
min_bits_per_pixel = <10>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <25>;
max_pixel_rate = <160000>;
isp_peak_byte_per_pixel = <5>;
isp_bw_margin_pct = <25>;
modules {
cam_module0: module0 {
status = “okay”;
badge = “eimx485_front_0485”;
position = “front”;
orientation = “1”;
cam_module0_drivernode0: drivernode0 {
pcl_id = “v4l2_sensor”;
devname = “e-con_cam 9-0042”;
proc-device-tree = “/proc/device-tree/cam_i2cmux/i2c@0/eimx485_a@42”;
status = “okay”;
};
};
cam_module1: module1 {
badge = “eimx485_rear_0485”;
position = “rear”;
orientation = “1”;
cam_module1_drivernode0: drivernode0 {
pcl_id = “v4l2_sensor”;
devname = “e-con_cam 10-0042”;
proc-device-tree = “/proc/device-tree/cam_i2cmux/i2c@1/eimx485_c@42”;
status = “okay”;
};
};
};
};
Note: With this settings I can able to get the stream via argus application for cam1.

  1. No I am not using any custom carrier board, I am using only Nvidia’s Orin Nano developer kit

Hi JerryChang

Is there any update on this?

1 Like

Is there any update on this? We’re running into similar issues trying to sync cameras.

please also contact with sensor vendor since you’re using camera module from e-con team.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.