|
|
| (44 intermediate revisions by 3 users not shown) |
| Line 1: |
Line 1: |
| − | The MT9V032 sensor at the heart off the CaspaPX is not yet supported in the kernel, so a little work is necessary to get the camera up and running.
| + | For information about the Caspa camera boards, go to the [http://wiki.gumstix.org/index.php?title=Caspa_camera_boards wiki page]. |
| − | | + | |
| − | == Quickstart ==
| + | |
| − | The first steps are important to verify your hardware setup and to test your customizations later.
| + | |
| − | | + | |
| − | === Install Pre-built Kernel ===
| + | |
| − | | + | |
| − | The easiest way to get started is to replace the kernel and modules of an existing image. This method was tested on an Overo Fire with a Tobi expansion board using the desktop image available [http://www.sakoman.com/feeds/omap3/glibc/images/overo/201011150741/ here].
| + | |
| − | | + | |
| − | Get the kernel and modules.
| + | |
| − | $ mkdir ~/caspakernel
| + | |
| − | $ cd ~/caspakernel
| + | |
| − | $ wget cumulus.gumstix.org/images/caspapx/uImage
| + | |
| − | $ wget cumulus.gumstix.org/images/caspapx/lib.tar.gz
| + | |
| − | | + | |
| − | Extract the modules.
| + | |
| − | $ tar -xf lib.tar.gz
| + | |
| − |
| + | |
| − | Copy them to an Overo already running the image that you want.
| + | |
| − | $ scp lib/* root@overo:/lib/
| + | |
| − | $ scp uImage root@overo:/boot/uImage;
| + | |
| − | $ scp uImage root@overo:/media/mmcblk0p1/uImage
| + | |
| − | | + | |
| − | Reset the overo.
| + | |
| − | $ ssh root@overo 'shutdown -r now'
| + | |
| − | | + | |
| − | This method is especially convenient for making modifications to the driver or kernel. See the customization section for more information.
| + | |
| − | | + | |
| − | === Test === | + | |
| − | | + | |
| − | From the serial console:
| + | |
| − | | + | |
| − | # export -DISPLAY :0.0
| + | |
| − | # gst-launch v4l2src ! xvimagesink
| + | |
| − | or
| + | |
| − | # mplayer tv:// -tv driver=v4l2:device=/dev/video0
| + | |
| − | | + | |
| − | From the desktop:
| + | |
| − | | + | |
| − | <left-click on desktop> Applications > Multimedia > Cheese
| + | |
| − | | + | |
| − | === Bitbake ===
| + | |
| − | | + | |
| − | To
| + | |
| − | | + | |
| − | == Customization ==
| + | |
| − | | + | |
| − | === Hardware Overview ===
| + | |
| − | The OMAP35X processors have dedicated hardware for capturing and processing data from image sensors. The CaspaPX camera sensor outputs raw 10-bit Bayer images which is transfered to the Image Signal Processor (ISP) via a parallel interface. The ISP contains a previewer module that converts the Bayer data to YUYV. This data is accessible as a V4L2 device in /dev/video0.
| + | |
| − | | + | |
| − | === Image Signal Processor ===
| + | |
| − | To get the best performance from the camera under other lighting conditions we need to get our hands dirty in the kernel source.
| + | |
| − | | + | |
| − | === MT9V032 Driver ===
| + | |
| − | | + | |
| − | If you want to take advantage of an unimplemented sensor feature, change defaults, etc., you need to modify the driver source. First, make sure that you
| + | |
| − | | + | |
| − | You can write scripts to make it even faster.
| + | |
| − | | + | |
| − | | + | |
| − | These steps will allow you to customize the camera driver and kernel for your own application.
| + | |
| − | | + | |
| − | == 2.6.34 ==
| + | |
| − | | + | |
| − | Get the kernel source that is used in the Gumstix kernel recipe (~/overo-oe/org.openmebedded.dev/recipes/linux/linux-omap3_2.6.34.bb) and create a new branch from the recipe SRCREV.
| + | |
| − | $ cd ~
| + | |
| − | $ git clone git://www.sakoman.com/git/linux-omap-2.6.git
| + | |
| − | $ cd linux-omap-2.6
| + | |
| − | $ git checkout cb89736af28f583598e49a05249334a194d00f1d
| + | |
| − | $ git checkout -b 2.6.34
| + | |
| − | | + | |
| − | Make a copy of the default kernel configuration to use as a starting point for your customizations.
| + | |
| − | $ cp ~/overo-oe/org.openembedded.dev/recipes/linux/linux-omap3-2.6.34/defconfig ./
| + | |
| − | $ cp defconfig .config
| + | |