How to use the OV5650 camera board on the PandaBoard ES (OMAP4460)

Because the official repo for OMAP4-V4L2 does not work, I decide to use Gary Thomas instead.

My setting is the following: Ubuntu 12.04 Desktop, PandaBoard ES (OMAP4460).

The first is to get the latest files from the project:
sudo apt-get update
$ git clone -b ti-ubuntu-3.4-1485.7 . project_dir
The dot here can be replaced by the git link so the files are downloaded directly from the server (might be slow).

cd project_dir
project_dir is the name of the directory and can be replaced by anything.

Next, you have to configure the project and compile it. We are choosing AARMHF as it is the version for ARM-based processors with Graphical Card.
do_tools=false fakeroot debian/rules clean
export $(dpkg-architecture -aarmhf)
do_tools=false fakeroot debian/rules editconfigs
In the configuration menu (System Type), choose either SDP4430 or PandaBoard (and camera support of course) because both won’t work together. Also, it is not necessary to change the “armel” configuration file, just choose the second one “armhf” that is prompted during that command.

do_tools=false fakeroot debian/rules binary-arch
This step (the longest) takes up to 4 hours to complete. Sometimes the ABI check or module check was not nice with me so I added “skipabi=true” and “skipmodule=true” to this line and it still worked.

Finally, you have to patch the kernel and install all these modifications:
cd ..
sudo dpkg -i linux-headers-3.4.0-1485_3.4.0-1485.7_armhf.deb
sudo dpkg -i linux-headers-3.4.0-1485-omap4_3.4.0-1485.7_armhf.deb
sudo dpkg -i linux-image-3.4.0-1485-omap4_3.4.0-1485.7_armhf.deb
The numbers might not be exactly the same so just adjust those commands to your situation.

Finally, execute the following:
sudo flash-kernel 3.4.0-1485-omap4

You are done! Simply connect you camera adapter to the PandaBoard ES and reboot. You should be able to see the OV5650 being detected when you type “dmesg” in the Terminal after reboot.

I could make it work using yavta but not gstreamer or vlc. See the OMAP4-V4l2 project for examples.

PS: For cross-compiling on an other computer, use CROSS_COMPILE=arm-linux-gnueabihf- dpkg-buildpackage -b -aarmhf

3 Responses to “How to use the OV5650 camera board on the PandaBoard ES (OMAP4460)”

  1. first of all thanks for the tutorial
    but if I try to use yavta I get the following error

    ./yavta /dev/video0 -c4 -n1 -s2592x1944 -fSGRBG10 -Fov5650-2592×1944-#.bin
    Device /dev/video0 opened.
    Device `OMAP4 ISS CSI2a output’ on `media’ is a video capture device.
    Video format set: SGRBG10 (30314142) 2592×1944 (stride 5184) buffer size 10077696
    Video format: SGRBG10 (30314142) 2592×1944 (stride 5184) buffer size 10077696
    1 buffers requested.
    length: 10077696 offset: 0
    Buffer 0 mapped at address 0xb6513000.
    Unable to start streaming: Invalid argument (22).
    Unable to dequeue buffer: Invalid argument (22).
    1 buffers released.

    Maybe you can send me your .config file or do you have any other idea what is causing the problem

  2. does anybody got the ov5650 running with gstreamer or opencv or any v4l application
    If yes please let us know
    thanks!

Leave a Reply




*