Camera interface with vf6xx

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Camera interface with vf6xx

Jump to solution
2,186 Views
ahmedrida
Contributor III

Hello everyone,

I'm an owner of a tower kit, TWR VF65GS10, and I want to use a digital camera MIPI/CSI-2 and interface it to the VIU3 interface of the Vybrid.

What should I need to do it ? I'm not going to use the VideoADC included. Does anyone tested to connect a camera to this kit before ?

If someone have some experience about camera interface with vybrid please let me know about it.

Regards,

Ahmed.

Labels (2)
0 Kudos
1 Solution
1,390 Views
timesyssupport
Senior Contributor II

Hello Ahmed,

Unfortunately, we have not used a camera module with the Vybrid Tower, as VIU3 is not well broken out. Some functionality of VIU has been implemented in a driver in the Linux kernel for the powerpc mpc512x target:

http://lxr.free-electrons.com/source/drivers/media/video/fsl-viu.c?v=3.0

http://lxr.free-electrons.com/source/drivers/media/platform/fsl-viu.c

If you were looking to use Linux, you could use this driver as a base for your own driver. Timesys can help with custom driver development under a services agreement. Let me know if you have any questions.

Thanks,

Timesys Support

View solution in original post

0 Kudos
10 Replies
1,390 Views
kef2
Senior Contributor IV

CSI-2 is serial camera interface, and VIU3 is parallel camera interface. CSI and VIU3 are not compatible.

Regards,

Edward

0 Kudos
1,390 Views
ahmedrida
Contributor III

Thank you Edward,

Yes I am going to use a parallel camera interface, do you/anyone tested a camera module on tower board vf6xx ?

If yes what kind of camera did you used ?

Does anyone have advices/samples ?

thank you,

Regards,

Ahmed.

0 Kudos
1,391 Views
timesyssupport
Senior Contributor II

Hello Ahmed,

Unfortunately, we have not used a camera module with the Vybrid Tower, as VIU3 is not well broken out. Some functionality of VIU has been implemented in a driver in the Linux kernel for the powerpc mpc512x target:

http://lxr.free-electrons.com/source/drivers/media/video/fsl-viu.c?v=3.0

http://lxr.free-electrons.com/source/drivers/media/platform/fsl-viu.c

If you were looking to use Linux, you could use this driver as a base for your own driver. Timesys can help with custom driver development under a services agreement. Let me know if you have any questions.

Thanks,

Timesys Support

0 Kudos
1,390 Views
kef2
Senior Contributor IV

Ahmed,

yes, I was using Vybrid Tower card with camera to debug and prototype final product code.

Regarding camera, I don't want to disclose its model. Any model with parallel interface should work well. You may have following problems interfacing camera to Vybrid Tower card:

1) find Vybrid VIU_DATAx wires, which don't interfere with Vybrid card circuits. You should study Vybrid Tower card schematics

2) I don't know if it is possible to have both camera and LCD-RGB display connected to Vybrid Card at the same time. I wasn't interested in this and don't know if this is possible. Some VIU data wires may interefe also with TWR-SER or TWR-SER2. You may need to check these circuits too. My task was to capture image data from camera and calculate some figures, no need to feed LCD with data from camera or use Ethernet. I was removing Vybrid card from tower and using only primary side PCI-E connector to interface with camera.

3) LCD connection probably requires contiguous VIU_DATA? signals set like data0, data1..data6. I was interfacing 12bit camera and didn't find such contiguous signals set. This forced me to shift some camera data bits left, some bits right when processing captured data at run time (NEON is great at this).

You need to study Vybrid RM Table 57-1 and Table 57-24.  First table explains what VIU3 data pins you need to use, second table explains how data bits will be packed in image storage RAM.
Don't get fooled by Table 57-1. It is misleading a bit. I think columns RGB565, RGB666 and RGB888 should contain the same values, like R7-R7-R7 for bit7 of red component. Though formats are different and RGB565 includes only 5 bits of red, R4 (R7) will be stored in the same bit position in RAM!

Regards

Edward

1,390 Views
ahmedrida
Contributor III

Thank for those helpfull information Edward,

I don't need LCD-RGB display also, I just need to capture data from camera, for a future application where I'll use my own sensor and everything between to convert data etc..

So for the moment I'm just focusing on a camera, see how I can interface it with the VIU, I checked the pins I'll have to use, (DATA, pix_clk, hsync, vsync, i2c for control, clk but which one? fid and de ?..) now I'm looking for a camera with parallel interface and if I can find also drivers for it. What do you think about this module : 5 MP High definition camera module | Camera module with S mount holder

It's based on a OV5640. I found only some cameras examples on imx6 boards but on vybrid not at all.

Regards,

Ahmed.

0 Kudos
1,390 Views
kef2
Senior Contributor IV

(I won't bother looking for OV5640 datasheet, sorry. Camera manufacturers for some reasons keep them nonpublic and often NDA protected. )

You need Pix_clk camera output, horizontal and vertical sync's and data ouputs. These are mandatory. FID and DE are optional. Connect them if your camera has such outputs.

I'm not sure what CLK are you asking about. Is it camera clock input? If so, then you can connect it to Vybrid CKO1 or CKO2 clock observation outputs. Camera must have built in PLL, which should accept wide range of input clock frequency. You should be able to produce required frequncy on CKOx pin.

Edward

1,390 Views
ahmedrida
Contributor III

Thank you Edward for the information about clock, that's what I was wondering. For the pins and choice of the camera it's better now.

For your camera application did you start it from scratch or did you follow an example ? what about drivers ?

Moreover did you make it work under mqx,linux? This point is not so clear for me. Which core is accessing the VIU

Thank you,

Best regards,

Ahmed

0 Kudos
1,390 Views
kef2
Senior Contributor IV

No drivers, no OS - bare metal. For camera position and image check I used FSL USB stack, USB Video Class device. This requires "no driver", Windows detects and installs driver on first plug in. There's plenty of USB WebCam apps on the net, which work with USB Video class devices.

Edward

0 Kudos
1,390 Views
ahmedrida
Contributor III

Thank you Edward I'm going to study the USB Stack.

Which IDE did you use to develop ? (Eclipse DS-5,IAR..?)

I have some difficulties to detect my board under IAR EW and debug my apps. I'm working on DS-5 for the moment.

Regards,

Ahmed

0 Kudos
1,393 Views
karina_valencia
NXP Apps Support
NXP Apps Support

timesyssupport can you  attend this case?

0 Kudos