Gx Series MIPI Camera Register Map
GX Series MIPI Camera Register Map
1 Overview
1.1 Register Features
The register address length is 2 bytes and the value length is 4 bytes.
Register R/W attributes: RW, RO, WO. Only the RW type can be saved to the camera flash.
Register values have several types: uint(unsigned int), bool, enum, ascii.
1.2 I2c communication protocol
The module supports parameter configuration via i2c protocol. The default i2c slave address of the camera is 0x3b which can be modified.
I2c data input order is MSB-first transfer.
We provide open source shell scripts under Linux to help read and write each register.
The script function column in the following table indicates the function name in the shell script corresponding to this register.
1.3 Update timing
The camera has two states, standby and running.
After power on, it enters the standby state, and after starting image acquisition, it enters the running state.
In the following table, Update timing possible value is:
A: Read and write at any time.
S: Read only at running state.
-: Read only at any time.
R: The valid value can be readat running state.
2 Basic Parameters
| Address | Name | Description | Data Type | R/W | Update timing | script function |
|---|---|---|---|---|---|---|
| 0x0000 | Manufacturer Name | String containing the self-describing name of the manufacturer. “VEYE” | ascii | RO | - | manufacturer |
| 0x0004 | Model Name | Product Model Code.
0x0662: GX-MIPI-IMX662 0x0664: GX-MIPI-IMX664 |
enum | RO | - | model |
| 0x0008 | Sensor Name | Sensor Model:
0x662: IMX662-AAQR 0x664: IMX662-AAQR1 |
enum | RO | - | sensorname |
| 0x000C | Serial Number | factory number | uint | RO | - | serialno |
| 0x0010 | Device Version | Firmware version number. The high 16 bits are the Control version and the low 16 bits are the Logic version.
For example, 0x01020304 means C version is 1.2 and L version is 3.4. |
uint | RO | - | version |
| 0x0014 | Factory Param | All parameters restored to factory default values.
This operation will erase the system flash and rewrite it. Please ensure that the power is not interrupted during the operation. Additionally, it is recommended not to perform frequent factoryparam operations. |
bool | WO | A | factoryparam |
| 0x0018 | Param save to flash | Save all parameters to flash, and they will not be lost when power off.
This operation will erase the system flash and rewrite it. Please ensure that the power is not interrupted during the operation. Additionally, it is recommended not to perform frequent paramsave operations. |
bool | WO | A | paramsave |
| 0x001C | System reboot | Reboot the camera. | bool | WO | A | reboot |
| 0x0020 | Time stamp | Time after system startup in Milliseconds. | uint | RO | - | timestamp |
| 0x0024 | Error Code | Reserved | uint | RO | - | errcode |
| 0x0028 | Format Cap | The module supports the capability set of data formats. Each bit represents a data Format, similar to the definition of the Pixel Format register.
bit0: Mono8 bit1: Mono10 bit2: Mono12 bit3: Mono14 (reserved) bit4: UYVY bit5: RGB888 bit6: Temp (reserved) bit7: YUYV |
uint | RO | - | fmtcap |
| 0x002C | ReadModeCap | Capbility of read mode supported by the camera.
bit0: Normal bit1: binning mode bit2: subsampling mode |
uint | RO | - | readmodecap |
| 0x0030 | WorkMode Cap | Capbility of trigger mode supported by the camera.
bit0: Video streaming mode bit1: Normal trigger mode. bit4: Multi-camera synchronization mode |
uint | RO | - | workmodecap |
| 0x0034 | LaneNumCap | The number of MIPI lanes supported by the camera .
The lower to higher bits correspond to the supported capabilities for 1 lane, 2 lanes, 3 lanes, and 4 lanes, respectively. For example, 0x2 indicates support for 2 lanes, and 0xA indicates support for both 2 lanes and 4 lanes. |
uint | RO | - | lanecap |
| 0x0038-
0x0054 |
Camera name | camera type | string | RO | - | cameramodel0-cameramodel7 |
| 0x0058 | Temperature K | The sensor's temperature value, in Kelvin, is 100 times the current temperature. | uint | RO | - | temp |
| 0x005C | VideoModeCap | Product resolution mode capability.
Bit0: ROI model. Bit1: Preset Mode mode |
uint | RO | - | videomodecap |
| 0x0060 | VideoModeNum | The GX series uses the resolution mode scheme by default and does not use the ROI scheme. The number of supported image modes. Up to 8 types are supported. | uint | RO | - | videomodenum |
| 0x0064 | VidoeMode_WH1 | In the first mode, the width is represented by the upper 16 bits and the height by the lower 16 bits. | uint | RO | - | videomodewh1 |
| 0x0068 | VideoMode_Param1 | The frame rate and read mode of the first pattern. The high 8 bits are reserved, the middle 8 bits define the read mode, and the low 16 bits represent the frame rate.
Read mode definition: 0: ordinary 1: binning 2: subsampling |
uint | RO | - | videomodeparam1 |
| 0x006C | VidoeMode_WH2 | The width and height of the second mode | uint | RO | - | videomodewh2 |
| 0x0070 | VideoMode_Param2 | The frame rate and reading method of the second mode. | uint | RO | - | videomodeparam2 |
| 0x0074 | VidoeMode_WH3 | The width and height of the third mode | uint | RO | - | videomodewh3 |
| 0x0078 | VideoMode_Param3 | The frame rate and reading method of the third mode. | uint | RO | - | videomodeparam3 |
| 0x007C | VidoeMode_WH4 | The width and height of the fourth mode | uint | RO | - | videomodewh4 |
| 0x0080 | VideoMode_Param4 | The frame rate and reading mode of the fourth pattern. | uint | RO | - | videomodeparam4 |
| 0x0084 | VidoeMode_WH5 | The width and height of the fifth mode | uint | RO | - | videomodewh5 |
| 0x0088 | VideoMode_Param5 | The frame rate and reading method of the fifth mode. | uint | RO | - | videomodeparam5 |
| 0x008C | VidoeMode_WH6 | The width and height of the sixth mode | uint | RO | - | videomodewh6 |
| 0x0090 | VideoMode_Param6 | The frame rate and reading method of the sixth mode. | uint | RO | - | videomodeparam6 |
| 0x0094 | VidoeMode_WH7 | The width and height of the seventh mode | uint | RO | - | videomodewh7 |
| 0x0098 | VideoMode_Param7 | The frame rate and reading method of the seventh mode. | uint | RO | - | videomodeparam7 |
| 0x009C | VidoeMode_WH8 | The width and height of the eighth mode | uint | RO | - | videomodewh8 |
| 0x00A0 | VideoMode_Param8 | The frame rate and reading method of the eighth mode. | uint | RO | - | videomodeparam8 |
3 Image Acquisition
| Address | Name | Description | Data Type | R/W | Update timing | script function |
|---|---|---|---|---|---|---|
| 0x0400 | Image Acquisition | Start/Stop acquisition
There is no image output after the camera is powered on, which means it is in the standby state. After writing 1 to this register, it enters the running state and starts outputting images or waiting for the trigger signal. |
bool | WO | A | imgacq |
| 0x0404 | Work Mode | 0: Video streaming mode
1: Normal trigger mode. 4: Multi-camera synchronization mode. See product manual for details. |
enum | RW | S | workmode |
| 0x0408 | Trigger Source | Get/Set Trigger Source:
0: Software trigger mode. 1: Hardware trigger mode. Effective in Trigger mode 1 and 2 only. |
enum | RW | S | trgsrc |
| 0x040C | Trigger Number | Trigger mode, the number of trigger frames in a single instance is represented by bit[7:0], which is valid within the legal range of 1 to 255. The default value is 1. | uint | RW | S | trgnum |
| 0x0410 | Trigger Interval | Trigger interval in normal trigger mode, in microseconds. Range: [0.0xFFFFFF] | uint | RW | S | trginterval |
| 0x0414 | Trigger Software | Software trigger command, write 1 for one trigger. | bool | WO | S | trgone |
| 0x0418 | Trigger Count | Trigger count statistics.
The high 16 bits indicate the number of trigger loss, and the low 16 bits indicate the total number of triggers. Write 1 to clear the count. |
uint | RW | S | trgcount |
| 0x041C | I2C ADDR | I2c address. Range[0x03,0x77]. | uint | RW | A | i2caddr |
| 0x044C | Non discontinuous mode | Indicates whether the clock lan of the mipi signal is in continuous clock mode.
0: discontinuous mode 1: continuous mode |
bool | RW | - | nondiscontinuousmode |
| 0x0460 | Slave mode | It takes effect in the synchronous mode of the GX series.
In the synchronization mode, the role of the camera. 0: Main Mode 1: From Mode Slave |
bool | RW | S | slavemode |
| 0x0464 | Sensor Frame Count | The number of frames output by the sensor. Cyclic counting. | uint | RO | - | framecount |
| 0x0468 | Out Frame Count | The number of frames output by the camera module. Cyclic counting. | uint | RO | - | framecount |
| 0x046C | Min Trigger cycle | Minimum trigger signal period, in microseconds (µs), with 0 indicating an invalid value.
In pulse trigger mode, it represents the minimum interval between the end of the previous trigger level and the next trigger signal. |
uint | RO | - | trgcycle |
| 0x0474 | Day night mode | 0: Color mode
1: Black and white mode 2: External Trigger Mode |
int | RW | A | daynightmode |
| 0x0478 | IRCUT dir | ircut Direction reversal | bool | RW | A | ircutdir |
| 0x047C | day night
trigger pin polarity |
The trigger pin polarity is reversed day and night. The default low level indicates night. When this value is set to 1, the high level indicates night. | bool | RW | A | pinpolarity |
| 0x0480 | IRCUT Timer | Whether to enable the IRCUT periodic control; if enabled, perform IRCUT control according to the default cycle; if not enabled, only perform one control when the mode is switched. | bool | RW | A | ircuttimer |
4 Image Features
| Address | Name | Description | Data Type | R/W | Update timing | script function |
|---|---|---|---|---|---|---|
| 0x0800 | Test Image Selector | GX Series
1: Vertical color stripes |
uint | RW | A | testimg |
| 0x0804 | Pixel Format | Pixel format
0: Mono8 1: Mono10 2: Mono12 3: Mono14(reserved) 4: UYVY 5: RGB888 6: Temp(reserved) 7: YUYV |
enum | RW | S | pixelformat |
| 0x0808 | Sensor Width | The maximum width supported by the sensor | uint | RO | - | maxwh |
| 0x080C | Sensor Height | The maximum height supported by sensor | uint | RO | - | maxwh |
| 0x0810 | MaxFrame Rate | The maximum frame rate supported in the current mode.
The register value is 100 times the frame rate. |
uint | RO | - | maxfps |
| 0x0818 | Current Width | Current Width. | uint | RO | - | curwh |
| 0x081C | Current Height | Current Height. | uint | RO | - | curwh |
| 0x0828 | Image Direction | Image orientation:
0: normal 1: mirror 2: flip 3: flip&mirror |
enum | RW | A | imgdir |
| 0x082C | VideoMode | For cameras that select width, height, and frame rate using the VideoMode mode, which mode to choose,The range is [0-7],The corresponding capability set is VideomodeCap. | uint | RW | S | videomode |
| 0x0838 | Read Mode | Read mode:
0: Normal 1: 2*2Binning 2: Subsampling |
uint | RO | - | readmode |
| 0x083C | Lane Num | Configuration of the number of Lans for outputting mipi signals.
2: 2lane default value 4: 4lane |
uint | RO | - | lanenum |
| 0x0840 | MIPI Datarate | The MIPI datarate for each lane, measured in Kbps. | uint | RO | - | mipidatarate |
| 0x0844 | Min Width | The minimum width supported by the camera. | uint | RO | - | minwh |
| 0x0848 | Min Height | The minimum height supported by the camera. | uint | RO | - | minwh |
| 0x084C | Min Frame Rate | The minimum framerate supported by the camera. The value is 10000 times the actual framerate. | uint | RO | - | minfps |
| 0x0850 | Framerate_EX | The extended register of the Framerate register, where the value is 10,000 times the actual frame rate. | uint | RW | S | fps |
5 ISP
| Address | Name | Description | Data Type | R/W | Update timing | script function |
|---|---|---|---|---|---|---|
| 0x0C04 | Exposure Mode | Exposure Type
0: Manual exposure 2: Automatic exposure |
enum | RW | A | expmode |
| 0x0C08 | Target Brightness | Target brightness for automatic exposure. Range[0,255] | uint | RW | A | aetarget |
| 0x0C0C | AE Strategy | Automatic exposure strategy:
0: Highlight priority mode (high light priority). 1: Shadow priority mode (low light priority), also known as backlight compensation mode (Backlight Compensation). |
enum | RW | A | aestrategy |
| 0x0C10 | ME Time | Manual exposure time,effective in ME mode. Range[16,1000000]. Note1.Unit: microseconds. | uint | RW | A | metime |
| 0x0C14 | AE MAX Time | Maximum exposure time in AE mode.Range[16,1000000]. Note1.Unit: microseconds. | uint | RW | A | aemaxtime |
| 0x0C18 | Exp Time | Current exposure time. Note1.Unit: microseconds. | uint | RO | R | exptime |
| 0x0C20 | Manual Gain | Manual gain, ,effective in MG mode. Note2. | uint | RW | A | mgain |
| 0x0C24 | AG Max Gain | Maximum value of auto gain. Note2. | uint | RW | A | aemaxgain |
| 0x0C28 | Cur Gain | Current Gain. Note2. | uint | RO | R | curgain |
| 0x0C3C | WB Mode | White balance type:
0: Manual White Balance 2: Automatic White Balance |
uint | RW | A | wbmode |
| 0x0C40 | AWB Color temp min | White balance minimum color temperature [1000,15000] (K) | uint | RW | A | awbcolortempmin |
| 0x0C44 | AWB Color temp max | White balance maximum color temperature [1000,15000] (K) | uint | RW | A | awbcolortempmax |
| 0x0C48 | MWB Rgain | Manual white balance R gain [0,4095] | uint | RW | A | mwbrgain |
| 0x0C4C | MWB Bgain | Manual white balance B gain [0,4095] | uint | RW | A | mwbbgain |
| 0x0C50 | Color Temp | Current color temperature (k) | uint | RO | R | colortemp |
| 0x0C54 | Cur Rgain | Current white balance R gain [0, 4095] | uint | RO | R | currgain |
| 0x0C58 | Cur Bgain | Current white balance B gain [0, 4095] | uint | RO | R | curbgain |
| 0x0C5C | AE Min Time | Automatic minimum exposure time
Range: 16 to 1,000,000 (unit: microseconds) |
uint | RW | A | aemintime |
| 0x0C94 | Anti flicker enable | Whether to enable the antiflicker function | bool | RW | A | antiflicker |
| 0x0C98 | Anti flicker Freq | Anti-flicker frequency | uint | RW | A | antiflicker |
| 0x0C9C | WDR Option | WDR Function Selection
0: Disable WDR 1: Digital Wide Dynamic Range (Digital WDR) 2: DOL WDR 3: Clear WDR |
bool | RW | A | wdrparam |
| 0x0CA0 | WDR strength | WDR intensity [0 - 255] | uint | RW | A | wdrparam |
| 0x0CA4 | Sharppen strength | Sharpening intensity [0 - 255] | uint | RW | A | sharppen |
| 0x0CA8 | 2D denoise strength | 2D noise reduction intensity [0 - 255] | uint | RW | A | denoise2d |
| 0x0CAC | 3D denoise strength | 3D noise reduction intensity [0 - 255] | uint | RW | A | denoise3d |
| 0x0CB0 | Saturation | Saturation [0 - 100] | uint | RW | A | saturation |
| 0x0CB4 | Contrast | Contrast [0 - 100] | uint | RW | A | contrast |
| 0x0CB8 | Hue | Hue [0 - 100] | uint | RW | A | hue |
| 0x0CBC | Slow Shutter | Is the automatic frame reduction function enabled, It only takes effect in the automatic exposure mode + video stream mode. Corresponding to Aemode, is it in the fixed frame rate mode or the automatic frame reduction mode
Note5 |
bool | RW | A | slowshutter |
| 0x0CC0 | Slow Shutter GainTh | The gain threshold at which automatic frame rate reduction begins. Measured in 0.1 dB units. | uint | RW | A | slowshutter |
| 0x0CC4 | Lens Distortion Correction | Lens distortion correction [0-255], abbreviated as LDC, 0 indicates off.
Note4 |
uint | RW | S | ldc |
| 0x0CCC | Dehaze strength | Defogging intensity [0-255] | uint | RW | A | dehaze |
| 0x0CD0 | Gamma Selection | The GX series has preset gamma options, with different values representing different gamma settings:
0: Gamma off, that is, linear format. 1: Default gamma. 2: gamma_1.6 3: gamma_1.8 4: gamma_2.0 5: gamma_2.2 6: Style 1 7: Style 2 8: Style 3 9: Style 4 10: Style 5 11: Style 6 12: User-defined gamma (TODO) |
uint | RW | A | gamma_index |
| 0x0CD4 | DRC strength | Digital wide dynamic range. Range [0-255], 0 indicates off. | uint | RW | A | drc |
Note1: All parameters of exposure time are in microseconds. However, due to the properties of the sensor, the actual exposure time unit of the sensor is 1 line, can not be accurate to 1us.
Note2:For all gain-related parameters, the register value is 10 times the number of dB. For example, if the register is 101, it means 10.1dB. The range and step vary according to the model.
Note3: AE: Auto exposure; AG: Auto Gain; AA: AE.
Note4: The parameters of this function setting must be set before the camera captures images to be effective.
Note5: When using this function, the maximum exposure time needs to be used in conjunction, for example, aemaxtime= 1,000,000 (us), and then the slowshutter enable and frame rate reduction gain threshold should be set.
6 IO Control
| Address | Name | Description | Data Type | R/W | Update timing | script function |
|---|---|---|---|---|---|---|
| 0x1000 | Trigger Delay | Trigger delay. Trigger delay. Effective in both soft trigger and hard trigger modes.
range: 0 to 1000000 (unit: microsecond) |
uint | RW | S | trgdelay |
| 0x1004 | Trigger Edge | 0: Rising edge
1: Falling edge |
uint | RW | S | trgedge |
| 0x1010 | Exposure Delay | Exposure delay, i.e. the time to turn on the Strobe signal in advance.
range: 0 to 1000000 (unit: microsecond) |
uint | RW | S | trgexp_delay |
| 0x1020 | GPIO1_OutSelect | [2:0]
000: Strobe 001: UserOut 010: TriggerWait, waiting for the trigger signal. The inverse state of the busy signal. (Supported by the GX series) Others: Keep |
uint | RW | A | outio1_mode |
| 0x1028 | GPIO1 Reverse | OUT_IO1 signal reversal. | bool | RW | A | outio1_rvs |
7 Special Block Area
0x1800-0x37FF : lut area.