• 0
Suavek

Pcam 5C camera module interfacing

Question

Hello, I am attempting to interface Digilent Pcam 5C module to my custom SoC board running Linux yocto build. 

The communication with camera via control I2C interface has been established and I am able to read some camera information. However the query to read it's image sensor returns always "Unknown"

root@myctrl:~# v4l2-ctl -d /dev/video0 --list-formats-ext

ioctl: VIDIOC_ENUM_FMT
        Index       : 0
        Type        : Video Capture
        Pixel Format: 'UYVY'
        Name        :
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown

        Index       : 1
        Type        : Video Capture
        Pixel Format: 'UYVY'
        Name        :
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown

        Index       : 2
        Type        : Video Capture
        Pixel Format: 'UYVY'
        Name        :
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown

        Index       : 3
        Type        : Video Capture
        Pixel Format: 'UYVY'
        Name        :
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown

        Index       : 4
        Type        : Video Capture
        Pixel Format: 'UYVY'
        Name        :
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown

        Index       : 5
        Type        : Video Capture
        Pixel Format: 'UYVY'
        Name        :
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown

        Index       : 6
        Type        : Video Capture
        Pixel Format: 'UYVY'
        Name        :
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown

        Index       : 7
        Type        : Video Capture
        Pixel Format: 'UYVY'
        Name        :
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown

        Index       : 8
        Type        : Video Capture
        Pixel Format: 'UYVY'
        Name        :
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknown
                Size: Unknow
 

Anyone here has past success on the subject?

Share this post


Link to post
Share on other sites

2 answers to this question

Recommended Posts

  • 0

Hello @Suavek,

I gave our SDSoC reVISION platform a try, because it is Linux-based and supports Pcam 5C. Booting the platform I get the following:

root@Zybo-Z7-20:~# v4l2-ctl -d /dev/video0 --verbose --list-formats-ext
VIDIOC_QUERYCAP: ok
ioctl: VIDIOC_ENUM_FMT
        Index       : 0
        Type        : Video Capture Multiplanar
        Pixel Format: 'YUYV'
        Name        : YUYV 4:2:2

        Index       : 1
        Type        : Video Capture Multiplanar
        Pixel Format: 'UYVY'
        Name        : UYVY 4:2:2

        Index       : 2
        Type        : Video Capture Multiplanar
        Pixel Format: 'NM16'
        Name        : Y/CbCr 4:2:2 (N-C)

        Index       : 3
        Type        : Video Capture Multiplanar
        Pixel Format: 'NV16'
        Name        : Y/CbCr 4:2:2

Looking at the Petalinux BSP project that is used in our SDSoC reVISION platform too, v4l2 support for the Pcam5C is coming from Xilinx Petalinux recipes for the MIPI CSI2 Rx Subsystem and Video Processing Subsystem IPs: https://github.com/Digilent/Petalinux-Zybo-Z7-20/commit/59be69aa92699cc26083c2ece87c28e2991151b3

Unfortunately, both IPs require a license (either separate or included in the SDSoC license), if you are re-creating the hardware platform, but you can use it as reference.

Build a new Petalinux project using our BSP and compare devicetrees.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now