GST_ARGUS: Running with following settings:
Camera index = 0
Camera mode = 0
Output Stream W = 3840 H = 2160
seconds to Run = 0
Frame Rate = 29.999999
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.
nvbuf_utils: dmabuf_fd -1 mapped entry NOT found
Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, threadExecute:694 NvBufSurfaceFromFd Failed.
Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, threadFunction:247 (propagating)
Resolution 3840*2160 30fps,
Set max9296 to 400M 0x320 and 0x2c,no problem exists,open two channel and Display with colored bars,then raise clk to 0x32,Open single path, preview black screen。
Make sure below NOTE in document.
Skew calibration is required if sensor or deserializer is using DPHY, and the output data rate is > 1.5Gbps.
An initiation deskew signal should be sent by sensor or deserializer to perform the skew calibration. If the deskew signals is not sent, the receiver will stall, and the capture will time out.
You can calculate the output data rate with the following equation:
Output data rate = (sensor or deserializer pixel clock in hertz) * (bits per pixel) / (number of CSI lanes)
hi: ShaneCCC
i can calculate this data rate:
3840216012301.2/4 per lane rate,and then double ,the result is 1.8G ,so config max9296
[ 106.277513] max9296 30-0048: i2c-w, 0x0443 = 0x80
[ 106.277807] max9296 30-0048: i2c-w, 0x0320 = 0x32
Present phenomenon is no work. I don’t know where else to configure。
Once the data rate > 1.5Gbps need sensor send deskew signals otherwise will get timeout to break the capture pipeline.
hi: ShaneCCC
I want to confirm that imx728 sensor sends deskew signal?
Also serializer max9295 is required?
thanks!
Suppose the one connect Jetson directly.
hi:
need sensor send deskew signals ----> Does this sensor refer to imx728 sensor?
If IMX728 connect to jetson directly then need sensor send the it.
For your case need to check if deserilizer able to by pass the deskew signals otherwise need max9295 send it.
hi:
i use gmsl max9295+max9296 ,now use deserilizer max9296 send deskew signals.
but still have problems. Any further advice. thanks.
Did you use v4l2-ctl to capture frame data from sensor?
Please get the trace log to check.
hi:
root@nvidia-desktop:/home/nvidia/temp# v4l2-ctl -d /dev/video0 --set-ctrl bypass_mode=0 --stream-mmap --stream-count=3
VIDIOC_S_EXT_CTRLS: failed: Device or resource busy
bypass_mode: Device or resource busy
VIDIOC_REQBUFS returned -1 (Device or resource busy)
root@nvidia-desktop:/home/nvidia/temp#
log upload attachment
video-imx728-0x34.log (36.6 KB)
The log tell the NVCSI/VI didn’t receive any validate data from MIPI bus.
hi:
Please look at a normal log, I do not know why it is not possible to close and then open it, or it is not possible to open it for the first time
trace.log (31.8 MB)
trace-no-ok.rar (10.6 MB)
Sorry, don’t understand what’s your mean?
hi:
when is not work,then sudo systemctl restart nvargus-daemon.service command,and open ok.
Looks like your sensor have power sequency problem cause some times failed and need restart daemon to recovery it.
Please confirm streaming by v4l2-ctl continuously to confirm it.
hi:
use this command v4l2-ctl -d /dev/video0 --set-ctrl bypass_mode=0 --stream-mmap --stream-count=50
can get frame rate
Make a scrip run it about 100 loops.
hi:
#!/bin/bash
for i in {1…100}
do
v4l2-ctl -d /dev/video0 --set-ctrl bypass_mode=0 --stream-mmap --stream-count=50
done
use a scrip run it about 100 loops and no problem