OIS Driver Plugin User Guide

Introduction

The OIS driver plugin is used to control the LC898122AXA OIS module. It provides control for all the features of the OIS module. These features are explained in detail below. 

Note: This module has been enabled with the AR2520 and the AR1335 sensors so far. It works with the ICP3 as well. However, the ICP3 connection assumes that you have an AR1335 module connected to it. If your sensor is not supported, this plugin will not show up in the Plug-ins menu. To add new sensors, please contact the dev team.

To Start the OIS Driver plugin:

  1. Start DevWare/DevWareX application and load the sensor data file for the sensor.
  2. Load the INI preset required, and get the sensor to stream. 
  3. Then go to Plug-ins->OIS Driver.

The following window comes up.



Figure 1 OIS Driver Plugin Dialog

OIS Driver Features

Initialize OIS Driver Button

Click this to initialize the OIS module. The initialization procedure takes a while with the ICP3 connected. Please be patient. When the initialization is done, you will see a message box saying “Initialization Done!”.

Internally, the OIS plugin initializes the OIS module (IniSet()), the AF module (IniSetAf()), and loads the calibration data (if found on EEPROM addressable at 0xA8, at address 0x00).

Calibration Data

The EEPROM is used to store the Calibration data.  The plugin looks for the 4 byte pattern to determine if valid calibration data is present. The plugin assumes that the data is present at address 0x00, and that the EEPROM is addressable at 0xA8. This is true for all the reference modules built internally. 

However, the customer modules can potentially store the calibration data at a different location in the EEPROM. However, they will still have to use the format shown in the calibration data table below, for the plugin to work. The 4 byte pattern must be the same as in the table below. Steps to follow to load calibration data:

  1. Enter the EEPROM slave address. Please note if the slave address is 0xA0, this will not work with Demo3, due to conflicting addresses.
  2. Enter the start address at which the calibration data is located. 
  3. Click the Load Calibration Data Button. 

A message should appear saying calibration data loaded successfully. 

Calibration data table

Data Addr

Data

Explanation

0x00

0x4C

Pattern (MSB)

0x01

0x43

Pattern-2

0x02

0x38

Pattern-3

0x03

0x39

Pattern (LSB)

0x04

0xCC

Hall offset X (MSB)

0x05

0x3A

Hall offset X (LSB)

0x06

0xE7

Hall offset Y (MSB)

0x07

0xD6

Hall offset Y (LSB)

0x08

0xF5

Hall bias X (MSB)

0x09

0x00

Hall bias X (LSB)

0x0A

0xE0

Hall bias Y (MSB)

0x0B

0x00

Hall bias Y (LSB)

0x0C

0x07

Hall AD offset X (MSB)

0x0D

0xE7

Hall AD offset X (LSB)

0x0E

0x04

Hall AD offset Y (MSB)

0x0F

0xC0

Hall AD offset Y (LSB)

0x10

0x27

Loop gain X (MSB)

0x11

0xA2

Loop gain X (LSB)

0x12

0x26

Loop gain Y (MSB)

0x13

0x6B

Loop gain Y (LSB)

0x14

0x00

Optical center X (MSB)

0x15

0x00

Optical center X (LSB)

0x16

0x00

Optical center Y (MSB)

0x17

0x00

Optical center Y (LSB)

0x18

0xFF

Gyro offset X (MSB)

0x19

0xFF

Gyro offset X (LSB)

0x1A

0xFF

Gyro offset Y (MSB)

0x1B

0xFF

Gyro offset Y (LSB)

0x1C

0x4C

OSC value

0x1D

0xBF

Gyro gain X [31 : 24]

0x1E

0x14

Gyro gain X [23 : 16]

0x1F

0x7B

Gyro gain X [15 : 8]

0x20

0x00

Gyro gain X [7 : 0]

0x21

0x3F

Gyro gain Y [31 : 24]

0x22

0x14

Gyro gain Y [23 : 16]

0x23

0x7B

Gyro gain Y [15 : 8]

0x24

0x00

Gyro gain Y [7 : 0]

OIS Control

There are two modes of OIS control, automatic and manual.
Manual Control
The default is manual control. It exposes two sliders, one for X direction, and other for Y direction. Slide these to see the lens moving in X and Y direction respectively. The hall sensor values can also be accessed by clicking the "Read values" button. The range for this data is -0.4 to + 0.4.
Auto OIS
This enables the OIS module in the LC898122. User can select movie mode or still mode using the radio buttons.

Focus control

This plugin provides only manual focus control. If you want auto focus, use the “Universal Auto Focus” plugin. There are two types of VCM drive supported with the LC898122 module, i.e. differential and single ended. This depends on how the hardware module is built. For reference modules built internally, modules numbered 1Mxx use differential drive, whereas modules numbered 2Mxx onwards (3Mxx, 4Mxx…) all use the single ended drive. If you are not sure which drive is used in your module, please test both. Either one should work. Select the appropriate option from the drop down box. Please note that this re-initializes the OIS module. You have to reload Calibration data, if you are not using the default values.

After selecting the VCM drive, control the lens position with the slider.

Test Gyro

This plugin also provides a way to test the Gyro. Click this button to run the test. The status will show up below.

Figure 2 Gyro Test Succeeded