Difference between revisions of "OV3640"

From ArmadeusWiki
Jump to: navigation, search
(Drivers)
m (Debugging)
Line 18: Line 18:
  
 
==Debugging==
 
==Debugging==
* Access to sensor registers form userspace (here I2C 7 bit @ = 0x30):
+
* Access to sensor registers from userspace (here I2C 7 bit @ = 0x30):
 
<pre class="apf">
 
<pre class="apf">
 
# ./v4l2-dbg -c 0x30 -g 0x3d
 
# ./v4l2-dbg -c 0x30 -g 0x3d

Revision as of 15:08, 28 July 2010

OV3640 is an Omnivision 3 Mpixels sensor that can be found in the following commercial camera modules:

Sensor seems pretty cool but, as always with Omnivision, datasheets are under NDA and init procedure looks like black magic.

Drivers

  • Freescale i.MX27/i.MX51 BSP have a driver for it (very customized one == only usable with Freescale BSP/boards)
  • Somebody from OMAP community tried to push a driver some times ago:

Our actual driver is a mix between these twos.

# modprobe mx27_camera
# modprobe ov3640

Debugging

  • Access to sensor registers from userspace (here I2C 7 bit @ = 0x30):
# ./v4l2-dbg -c 0x30 -g 0x3d
ioctl: VIDIOC_DBG_G_REGISTER
Register 0x0000003d = 99h (153d  10011001b)

# ./v4l2-dbg -c 0x30 -s 0x3d 0
Register 0x0000003d set to 0x0

# ./v4l2-dbg -c 0x30 -g 0x3d
ioctl: VIDIOC_DBG_G_REGISTER
Register 0x0000003d = 0h (0d  00000000b)

# ./v4l2-dbg -c 0x30 -l
ioctl: VIDIOC_DBG_G_REGISTER

          00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
00000000: 00 80 80 12 00 00 00 00 00 01 96 52 04 80 01 43
00000010: 40 00 10 8f 4a 00 04 1a ba 01 81 00 7f a2 10 00
...............

Links