OV5642 on imx6sx SABRE produces corrupted image

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

OV5642 on imx6sx SABRE produces corrupted image

ソリューションへジャンプ
1,207件の閲覧回数
itsemast
Contributor II

I am using OV5642 camera module from Boundary Devices (Nit6X_5MP) with i.MX 6SoloX board.

I have used the driver used on Nitrogen6_SoloX (ov5642_v2.c) and modified the device tree (imx6sx-sdb.dtsi) accordingly. The camera initializes fine, and I can capture frames from it with yavta or gstreamer, the camera seems to work, it produces sensible output of expected size (16 bits per pixel), I can recognize the shapes and objects in the resulting image, but all colors are wrong. The camera seems to be configured to produce the output in YUYV (56595559) format, but it doesn't seem to be correct.

I have set the camera to produce a color bars test pattern in VGA format, and the resulting capture (gzipped) can be found as an attachment. The bars are obvious there, but I can't get the colors right. If you can recognize the pattern or have an idea what can be causing this (the interface, the driver or DMA), please, share your thoughts!

ラベル(2)
タグ(2)
0 件の賞賛
返信
1 解決策
1,154件の閲覧回数
itsemast
Contributor II

Thank you very much for your support! The problem was that only a half of the data bus was connected. With the adapter rewired the camera is now capturing the image correctly.

元の投稿で解決策を見る

0 件の賞賛
返信
3 返答(返信)
1,155件の閲覧回数
itsemast
Contributor II

Thank you very much for your support! The problem was that only a half of the data bus was connected. With the adapter rewired the camera is now capturing the image correctly.

0 件の賞賛
返信
1,196件の閲覧回数
igorpadykov
NXP Employee
NXP Employee

Hi Dima

 

one can try imx6sx-nitrogen6sx.dts

https://github.com/boundarydevices/linux-imx6/tree/boundary-imx_5.4.x_2.2.0/arch/arm/boot/dts

 

Best regards
igor

1,190件の閲覧回数
itsemast
Contributor II

Hi Igor,

Thank you very much for your reply! My device tree modifications are based on imx6sx-nitrogen6sx.dts, you can find the diff attached.

The image lacking color information only has the following bytes in it: 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F, it seems that the Y component is completely missing from it. Do you think this might be caused by the parallel interface misconfiguration?

0 件の賞賛
返信