Hello,
I received my Bounday Devices Nitrogen 6X board yesterday, together with the two OV5640 cameras (the parallel and MIPI versions).
I have since tried the bundled Yocto version, the Yocto Fido release and now I am on the 2015 release of Ubuntu Trusty, and under none of the versions have I managed to run the simplest gstreamer command taking input video from the cameras. The only improvement under Ubuntu is that HDMI finally works, but that is a secondary issue,
So, back to the cameras. With only the MIPI camera plugged in, this is what I run right after boot:
modprobe ov5640_camera_mipi
modprobe mxc_v4l2_capture
(the drivers do show up properly in lsmod afterwards)
sudo gst-launch imxv4l2src ! imxv4l2sink
MFW_GST_V4LSRC_PLUGIN 4.0.2 build on Jun 1 2015 05:36:19.mxc_v4l_open: Mxc C
amera no sensor ipu0/csi0
mxc_v4l_open: Mxc Camera no sensor ipu0/csi1
mxc_v4l_open: Mxc Camera no sensor ipu0/csi0
MFW_GST_V4LSINK_PLUGIN 4.0.2 build on Jun 1 2015 05:35:56mxc_v4l_open: Mxc C
amera no sensor ipu0/csi0
.
Setting pipeline to PAUSED ...
ERROR: Pipeline doesn't want to pause.
Setting pipeline to NULL ...
Total rendered:0
Freeing pipeline ...
[--->FINALIZE v4l_sink
However, the MIPI camera seems to be detected at boot:
dmesg | grep ov56 | |
ov5640_read_reg:write reg error:reg=300a | |
camera ov5640 is not found | |
ov5640_mipi 1-003e: found pwm2, period=45 | |
mxc_v4l2_master_attach: ipu1:/csi0 mipi attached ov5640_mipi:mxc_v4l2_cap1 | |
camera ov5640_mipi is found | |
update_device_addr: ov5642 ret=-5 | |
ov5642_read_reg:write reg error:reg=300a |
camera ov5642 is not found
Could anyone advise me on what next to take? I have tried following similar threads in the past day and a half, but none of the suggestions applied to my case. Please let me know what extra info I can post.
Thank you very much in advance!
Solved! Go to Solution.
Hi Christian
according to this post:
https://boundarydevices.com/compiling-latest-u-boot-for-i-mx6-2015-edition/
need the new 2015-07 boundary u-boot to work with the new 3.14.28 kernel.
https://www.mail-archive.com/meta-freescale@yoctoproject.org/msg16366.html//www.mail-archive.com/meta-freescale@yoctoproject.org/msg16366.html
https://github.com/boundarydevices/linux-imx6/commit/2ffd4a4
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Christian
according to this post:
https://boundarydevices.com/compiling-latest-u-boot-for-i-mx6-2015-edition/
need the new 2015-07 boundary u-boot to work with the new 3.14.28 kernel.
https://www.mail-archive.com/meta-freescale@yoctoproject.org/msg16366.html//www.mail-archive.com/meta-freescale@yoctoproject.org/msg16366.html
https://github.com/boundarydevices/linux-imx6/commit/2ffd4a4
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Igor,
Thank you for your message! I updated the u-boot script, and that seemed to do the trick!
However, I noticed that if I specify a different /dev/videoX to imxv4l2src, I get the same error messages as before. Could it be that imxv4l2 did not point to the correct video device as a source in the first instance? (given that there was only one camera present, it should have been the only valid source).
How can I programmatically determine which video device the cameras are attached to? If I type:
dmesg | grep video, I get:
mxc_hdmi 20e0000.hdmi_video: Detected HDMI controller 0x13:0xa:0xa0:0xc1
mxc_v4l2_output v4l2_out.35: V4L2 device registered as video16
mxc_v4l2_output v4l2_out.35: V4L2 device registered as video17
So nothing about the cameras being registered as specific devices.
Kindest regards,
Cristian Pandele
Hullo,
You could parse the output of "v4l2-ctl --list-devices" or use its sources to write your own detector.
--
Kende
Hi Kende,
Great tip, thanks! I didn't have v4l-utils installed, a lot of great stuff that can be used from there!
Kindest regards,
Cristian Pandele
Hi Christian
boundary devices developers are working on
meta-fsl-arm mailing list, so for more details one can post on
https://lists.yoctoproject.org/listinfo/meta-freescale
Best regards
igor