Search

Technical Discussion Group Forum

This forum is provided for user discussion. While Beacon EmbeddedWorks support staff and engineers participate, Beacon EmbeddedWorks does not guarantee the accuracy of all information within in the Technical Discussion Group (TDG).

The "Articles" forums provide brief Articles written by Beacon EmbeddedWorks engineers that address the most frequently asked technical questions.

To receive email notifications when updates are posted for a Beacon EmbeddedWorks product download, please subscribe to the TDG Forum of interest.

TDG Forum

PrevPrev Go to previous topic
NextNext Go to next topic
Last Post 14 Nov 2016 02:45 PM by  Adam Ford
Acquiring a static image from unlisted sensor connected to camera connection interface.
 4 Replies
Sort:
You are not authorized to post a reply.
Author Messages
Anton Bakulev
New Member
New Member
Posts:13


--
14 Nov 2016 10:31 AM
    I have a SDK-DM3730-30-256512R with Torpedo Launcher 3 Baseboard and SOMDM3730-20-2780AGCR running LogicPD_Linux_BSP_2.4-4 on it. I've installed media-ctl and yavta tools. Unfortunately I was failed in purchasing recommended in "AN 596 Logic PD Development Kit Camera Module Selection and Integration" document sensor boards. Most of them is out of stock and EOL.

    My device should work with Fairchild Imaging CIS1910F sensor. I've connected it to Torpedo board by Camera connection interface (parallel) and by SPI1 CS1.

    Could you, please, explain me steps to acquire a static image from the sensor? Is it possible only with media-ctl and yavta tools or some kernel hacking is required?

    Adam Ford
    Advanced Member
    Advanced Member
    Posts:793


    --
    14 Nov 2016 11:13 AM
    You'll need to make sure you have a compatible driver. This will allow the camera to present itself in /dev/ to the v4l2 system (Video 4 Linux 2). At that point, any V4L2 compliant software should be able to use the camera.

    The example we have in the User Guide in 8.3.2 of the User Guide is for the Leopard Imaging 5 megapixel LI-5M04, and it shows a series of examples and capturing a still image is included. I would expect you should be able to adapt it to over camera, but unfortunately, we don't have your camera module to test on our side, so I don't know exactly what parameters need to change.

    Having said that, we do offer customer engineering services if you would like us to help you develop customizations to the Linux BSP for you camera, but that type requires a services contract. If you'd like, I can certainly have one of our account managers reach out to you to discuss options.

    adam

    Anton Bakulev
    New Member
    New Member
    Posts:13


    --
    14 Nov 2016 11:17 AM

    Adam, thank you. Could you ask to reach out to me to discuss options?

    Anton Bakulev
    New Member
    New Member
    Posts:13


    --
    14 Nov 2016 11:22 AM
    Could you explain me how could I test a compatibility of the dirver that will allow the camera to present itself in /dev/ to the v4l2 system (Video 4 Linux 2).

    Currently I have in /dev:
    DM-37x# ls /dev/media0 /dev/video* /dev/v4l-subdev*
    /dev/media0 /dev/v4l-subdev4 /dev/video0 /dev/video5
    /dev/v4l-subdev0 /dev/v4l-subdev5 /dev/video1 /dev/video6
    /dev/v4l-subdev1 /dev/v4l-subdev6 /dev/video2 /dev/video7
    /dev/v4l-subdev2 /dev/v4l-subdev7 /dev/video3 /dev/video8
    /dev/v4l-subdev3 /dev/video /dev/video4

    and media-ctl -p shows:
    DM-37x# media-ctl -p
    Opening media device /dev/media0
    Enumerating entities
    Found 15 entities
    Enumerating pads and links
    Media controller API version 0.0.0

    Media device information
    ------------------------
    driver omap3isp
    model TI OMAP3 ISP
    serial
    bus info
    hw revision 0x0
    driver version 0.0.0

    Device topology
    - entity 1: OMAP3 ISP CCP2 (2 pads, 2 links)
    type V4L2 subdev subtype Unknown
    device node name /dev/v4l-subdev0
    pad0: Sink [SGRBG10 4096x4096]
    <- "OMAP3 ISP CCP2 input":0 []
    pad1: Source [SGRBG10 4096x4096]
    -> "OMAP3 ISP CCDC":0 []

    - entity 2: OMAP3 ISP CCP2 input (1 pad, 1 link)
    type Node subtype V4L
    device node name /dev/video0
    pad0: Source
    -> "OMAP3 ISP CCP2":0 []

    - entity 3: OMAP3 ISP CSI2a (2 pads, 2 links)
    type V4L2 subdev subtype Unknown
    device node name /dev/v4l-subdev1
    pad0: Sink [SGRBG10 4096x4096]
    pad1: Source [SGRBG10 4096x4096]
    -> "OMAP3 ISP CSI2a output":0 []
    -> "OMAP3 ISP CCDC":0 []

    - entity 4: OMAP3 ISP CSI2a output (1 pad, 1 link)
    type Node subtype V4L
    device node name /dev/video1
    pad0: Sink
    <- "OMAP3 ISP CSI2a":1 []

    - entity 5: OMAP3 ISP CCDC (3 pads, 8 links)
    type V4L2 subdev subtype Unknown
    device node name /dev/v4l-subdev2
    pad0: Sink [SGRBG10 4096x4096]
    <- "OMAP3 ISP CCP2":1 []
    <- "OMAP3 ISP CSI2a":1 []
    pad1: Source [SGRBG10 4096x4096]
    -> "OMAP3 ISP CCDC output":0 []
    -> "OMAP3 ISP resizer":0 []
    pad2: Source [SGRBG10 4096x4095]
    -> "OMAP3 ISP preview":0 []
    -> "OMAP3 ISP AEWB":0 [ENABLED,IMMUTABLE]
    -> "OMAP3 ISP AF":0 [ENABLED,IMMUTABLE]
    -> "OMAP3 ISP histogram":0 [ENABLED,IMMUTABLE]

    - entity 6: OMAP3 ISP CCDC output (1 pad, 1 link)
    type Node subtype V4L
    device node name /dev/video2
    pad0: Sink
    <- "OMAP3 ISP CCDC":1 []

    - entity 7: OMAP3 ISP preview (2 pads, 4 links)
    type V4L2 subdev subtype Unknown
    device node name /dev/v4l-subdev3
    pad0: Sink [SGRBG10 4096x4096]
    <- "OMAP3 ISP CCDC":2 []
    <- "OMAP3 ISP preview input":0 []
    pad1: Source [YUYV 4082x4088]
    -> "OMAP3 ISP preview output":0 []
    -> "OMAP3 ISP resizer":0 []

    - entity 8: OMAP3 ISP preview input (1 pad, 1 link)
    type Node subtype V4L
    device node name /dev/video3
    pad0: Source
    -> "OMAP3 ISP preview":0 []

    - entity 9: OMAP3 ISP preview output (1 pad, 1 link)
    type Node subtype V4L
    device node name /dev/video4
    pad0: Sink
    <- "OMAP3 ISP preview":1 []

    - entity 10: OMAP3 ISP resizer (2 pads, 4 links)
    type V4L2 subdev subtype Unknown
    device node name /dev/v4l-subdev4
    pad0: Sink [YUYV 4095x4095 (4,6)/4086x4082]
    <- "OMAP3 ISP CCDC":1 []
    <- "OMAP3 ISP preview":1 []
    <- "OMAP3 ISP resizer input":0 []
    pad1: Source [YUYV 4096x4095]
    -> "OMAP3 ISP resizer output":0 []

    - entity 11: OMAP3 ISP resizer input (1 pad, 1 link)
    type Node subtype V4L
    device node name /dev/video5
    pad0: Source
    [26639.884155] omap_device: smartreflex.0: new worst case deactivate latency 0: 366210
    -> "OMAP3 ISP resizer":0 []

    - entity 12: OMAP3 ISP resizer output (1 pad, 1 link)
    type Node subtype V4L
    device node name /dev/video6
    pad0: Sink
    <- "OMAP3 ISP resizer":1 []

    - entity 13: OMAP3 ISP AEWB (1 pad, 1 link)
    type V4L2 subdev subtype Unknown
    device node name /dev/v4l-subdev5
    pad0: Sink
    <- "OMAP3 ISP CCDC":2 [ENABLED,IMMUTABLE]

    - entity 14: OMAP3 ISP AF (1 pad, 1 link)
    type V4L2 subdev subtype Unknown
    device node name /dev/v4l-subdev6
    pad0: Sink
    <- "OMAP3 ISP CCDC":2 [ENABLED,IMMUTABLE]

    - entity 15: OMAP3 ISP histogram (1 pad, 1 link)
    type V4L2 subdev subtype Unknown
    device node name /dev/v4l-subdev7
    pad0: Sink
    <- "OMAP3 ISP CCDC":2 [ENABLED,IMMUTABLE]


    Is I able to acquire static images from my sensor with this devices?
    Adam Ford
    Advanced Member
    Advanced Member
    Posts:793


    --
    14 Nov 2016 02:45 PM
    I had to engage on our software developers who has done video in Linux before. Our example uses a camera with an i2c bus and the driver loads is MT9P031. Once detected, the device presents itself and the V4L2 system can access the camera. It appears as if you are lacking a proper driver., so the V4L2 system doesn't know that it's there. It's possible that there is a driver in the kernel or an upstream kernel, but it would take some research to find out.

    An account manager is going to reach out to you and get some more background information, then we can discuss some possible options.

    adam
    You are not authorized to post a reply.