NXP MIPI-CSI Camera SetVoipac webshop

From Voipac Wiki
Revision as of 22:08, 11 February 2025 by Voipac (talk | contribs) (→‎Capture single JPEG picture)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

MINISASTOCSI is a MIPI-CSI interface camera kit, based on OmniVision chipset OV5640 Detection, performance and essential commands are described here.

hot-plug.png

MINISASTOCSI-Voipac-BB.png
MINISASTOCSI is a MIPI-CSI interface camera connected to iMX Development Baseboard

Kernel detection

root@imx8mq-voipac:~# dmesg | grep ov56
[    2.398433] ov5640_mipi 1-003c: No pin available
[    2.403090] ov5640_mipi 1-003c: No sensor pwdn pin available
[    2.408777] ov5640_mipi 1-003c: No sensor reset pin available
[    2.414571] ov5640_regulator_enable: cannot get io voltage error - err:-517
[    2.539603] ov5640_mipi 2-003c: No pin available
[    2.549079] ov5640_mipi 2-003c: No sensor reset pin available
[    2.554887] ov5640_regulator_enable: cannot get io voltage error - err:-517
[    2.999855] ov5640_mipi 1-003c: No pin available
[    3.005558] ov5640_mipi 1-003c: No sensor reset pin available
[    3.012003] ov5640_mipi 1-003c: 1-003c supply DVDD not found, using dummy regulator
[    3.019785] ov5640_mipi 1-003c: 1-003c supply AVDD not found, using dummy regulator
[    3.039290] ov5640_mipi 1-003c: Read reg error: reg=300a
[    3.044691] ov5640_mipi 1-003c: Camera is not found
[    3.051918] ov5640_mipi 2-003c: No pin available
[    3.062814] ov5640_mipi 2-003c: No sensor reset pin available
[    3.069209] ov5640_mipi 2-003c: 2-003c supply DVDD not found, using dummy regulator
[    3.076945] ov5640_mipi 2-003c: 2-003c supply AVDD not found, using dummy regulator
[    4.291092] mxc-mipi-csi2_yav 30a70000.mipi_csi: Registered sensor subdevice: ov5640_mipi 2-003c
[    4.304334] ov5640_mipi 2-003c: Camera is found

I2C detection

MINISASTOCSI camera chip is connected via I2C3. The most important address for correct detection is 0x3c.

root@imx8mq-voipac:~# i2cdetect -y 2
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: UU UU UU UU -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- UU -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --


MINISASTOCSI camera can be also connected to I2C2 interface by moving 0R resistors. However second camera connected on CSI-2 interface have same address 0x3c as MINISASTOCSI camera connected on CSI-1 interface.
CSI1-I2C2 and I2C3.png


Gstreamer

Capture single JPEG picture

root@imx8mq-voipac:~# gst-launch-1.0 v4l2src num-buffers=1 ! jpegenc ! filesink location=sample_image_nxp.jpeg
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
[ 1301.273334] ov5640_mipi 2-003c: s_stream: 1
Got EOS from element "pipeline0".[ 1303.353181] ov5640_mipi 2-003c: s_stream: 0

Execution ended after 0:00:02.649996154
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...
root@imx8mq-voipac:~# ls
sample_image.jpeg
root@imx8mq-voipac:~#

The image stored in local media with name sample_image_nxp.jpeg

Video preview

root@imx8mq-voipac:~# GST_DEBUG=GST_BUFFER:5 gst-launch-1.0 v4l2src ! 'video/x-raw,framerate=30/1' ! autovideosink
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
0:00:00.842776580   469 0xaaaadc001c00 DEBUG             GST_BUFFER gstbuffer.c:2279:gst_buffer_add_meta: alloc metadata 0xaaaadc0623c0 (GstVideoMeta) of size 112
0:00:00.842935198   469 0xaaaadc001c00 DEBUG             GST_BUFFER gstbuffer.c:2279:gst_buffer_add_meta: alloc metadata 0xaaaadc062440 (GstVideoMeta) of size 112
0:00:00.843278592   469 0xaaaadc001c00 DEB[ 1415.898001] ov5640_mipi 2-003c: s_stream: 1
UG             GST_BUFFER gstbuffer.c:2279:gst_buffer_add_meta: alloc metadata 0xaaaadc0624c0 (GstVideoMeta) of size 112
0:00:00.843338584   469 0xaaaadc001c00 DEBUG             GST_BUFFER gstbuffer.c:2279:gst_buffer_add_meta: alloc metadata 0xaaaadc062540 (GstVideoMeta) of size 112
[ 1416.119964] skip frame 1

The video stream from camera can be displayed on display/monitor