Difference between revisions of "MV Series MIPI Camera Register Map"
Line 148: | Line 148: | ||
|0x0400 | |0x0400 | ||
|Image Acquisition | |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 | |bool | ||
|WO | |WO | ||
Line 156: | Line 160: | ||
|0x0404 | |0x0404 | ||
|Trigger Mode | |Trigger Mode | ||
− | | | + | |0:Video streaming mode |
+ | |||
+ | 1:Normal trigger mode. | ||
+ | |||
+ | 2:High-speed continuous trigger mode. | ||
+ | |||
+ | See product manual for details. | ||
|enum | |enum | ||
|RW | |RW | ||
Line 164: | Line 174: | ||
|0x0408 | |0x0408 | ||
|Trigger Source | |Trigger Source | ||
− | | | + | |0: Software trigger mode. |
+ | |||
+ | 1: Hardware trigger mode. | ||
|enum | |enum | ||
|RW | |RW | ||
Line 172: | Line 184: | ||
|0x040C | |0x040C | ||
|Trigger Number | |Trigger Number | ||
− | | | + | |The number of image frames output by one trigger signal in trigger mode. Range:[1.255] |
|uint | |uint | ||
|RW | |RW | ||
Line 180: | Line 192: | ||
|0x0410 | |0x0410 | ||
|Trigger Interval | |Trigger Interval | ||
− | | | + | |Trigger interval in normal trigger mode, in microseconds. Range:[0.0xFFFFFF] |
|uint | |uint | ||
|RW | |RW | ||
Line 188: | Line 200: | ||
|0x0414 | |0x0414 | ||
|Trigger Software | |Trigger Software | ||
− | | | + | |Software trigger command, write 1 for one trigger. |
|bool | |bool | ||
|WO | |WO | ||
Line 196: | Line 208: | ||
|0x0418 | |0x0418 | ||
|Trigger Count | |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 | |uint | ||
|RW | |RW | ||
Line 204: | Line 220: | ||
|0x041C | |0x041C | ||
|I2C ADDR | |I2C ADDR | ||
− | | | + | |I2c address. Range[0x03,0x77]. |
|uint | |uint | ||
|RW | |RW |
Revision as of 09:07, 7 March 2022
1 Overview
1.1 Register Features
The register address length is 4 bytes and the data length is 2 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 the start of image acquisition into 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.
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.
0x178 : MV-MIPI-IMX178 |
enum | RO | - | model |
0x0008 | Sensor Name | Sensor Model:
0x178 : IMX178LLJ |
enum | RO | - | |
0x000C | Serial Number | Unique product serial number | uint | RO | - | |
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 Control version is 1.2 and Logic version is 3.4. |
uint | RO | - | version |
0x0014 | Factory Param | All parameters restored to factory default values. | bool | WO | A | factoryparam |
0x0018 | Param save to flash | Save the parameters to flash, and they will not be lost when power off. | 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 | System error code, each bit represents an error type.
bit0: sensor error. bit1: Logic module startup error. bit2: Logic module communication error. bit5: AA(AE&AG) regulation cannot reach the target. bit6: Authorization failure. |
uint | RO | - | errcode |
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 | Trigger Mode | 0:Video streaming mode
1:Normal trigger mode. 2:High-speed continuous trigger mode. See product manual for details. |
enum | RW | S | trgmode |
0x0408 | Trigger Source | 0: Software trigger mode.
1: Hardware trigger mode. |
enum | RW | S | trgsrc |
0x040C | Trigger Number | The number of image frames output by one trigger signal in trigger mode. Range:[1.255] | 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 | A | 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 | A | trgcount |
0x041C | I2C ADDR | I2c address. Range[0x03,0x77]. | uint | RW | A | i2caddr |
4 Image Features
Address | Name | Description | Data Type | R/W | Update timing | script function |
---|---|---|---|---|---|---|
0x0800 | Test Image Selector | uint | RW | A | testimg | |
0x0804 | Pixel Format | enum | RW | A | pixelformat | |
0x0808 | Sensor Width | uint | RO | - | maxwh | |
0x080C | Sensor Height | uint | RO | - | maxwh | |
0x0810 | MaxFrame Rate | uint | RO | - | maxfps | |
0x0814 | Framerate | uint | RW | S | fps | |
0x0818 | ROI Width | uint | RW | S | roi | |
0x081C | ROI Height | uint | RW | S | roi | |
0x0820 | ROI Offset X | uint | RW | S | roi | |
0x0824 | ROI Offset Y | uint | RW | S | roi | |
0x0828 | Image Direction | enum | RW | A | imgdir | |
0x0830 | Black Level | uint | RW | A | blacklevel |
5 ISP
Address | Name | Description | Data Type | R/W | Update timing | script function |
---|---|---|---|---|---|---|
0x0C00 | ISP module ctrl | uint | RW | A | gammaenable,
dpcenable, lutenable, | |
0x0C04 | Exposure Mode | enum | RW | A | expmode | |
0x0C08 | Target Brightness | uint | RW | A | aatarget | |
0x0C10 | ME Time | uint | RW | A | metime | |
0x0C14 | AE MAX Time | uint | RW | A | aemaxtime | |
0x0C18 | Exp Time | uint | RO | - | exptime | |
0x0C1C | Gain Mode | enum | RW | A | gainmode | |
0x0C20 | Manual Gain | uint | RW | A | mgain | |
0x0C24 | AG Max Gain | uint | RW | A | agmaxgain | |
0x0C28 | Cur Gain | uint | RO | - | curgain | |
0x0C2C | AAROIOffsetX | uint | RW | A | aaroi | |
0x0C30 | AAROIOffsetY | uint | RW | A | aaroi | |
0x0C34 | AAROIWidth | uint | RW | A | aaroi | |
0x0C38 | AAROIHeight | uint | RW | A | aaroi | |
0x0C60 | Gamma | uint | RW | A | gamma | |
0x0C74 | LUT Count | uint | RO | - | lut | |
0x0C78 | LUT Start | bool | WO | A | lut | |
0x0C7C | LUT Done | bool | WO | A | lut | |
0x0C80 | AAROI enable | bool | RW | A | aaroienable |
6 IO Control
Address | Name | Description | Data Type | R/W | Update timing | script function |
---|---|---|---|---|---|---|
0x1000 | Trigger Delay | uint | RW | S | trgdelay | |
0x1004 | Trigger Activation | uint | RW | S | trgedge | |
0x1008 | Trigger Filter Enable | uint | RW | S | trgfilter_enable | |
0x100c | Trigger Filter Width | uint | RW | S | trgfilter_time | |
0x1010 | Exposure Delay | uint | RW | S | trgexp_delay | |
0x1014 | TriggerIN IO status | enum | RO | - | gpios_status | |
0x1020 | GPIO1_OutSelect | uint | RW | A | outio1_mode | |
0x1024 | GPIO1 UserOut | enum | RW | A | outio1_usr | |
0x1028 | GPIO1 Reverse | bool | RW | A | outio1_rvs | |
0x102C | GPIO1 OutStatus | enum | RO | - | gpios_status | |
0x1030 | GPIO2_OutSelect | uint | RW | A | outio2_mode | |
0x1034 | GPIO2 UserOut | enum | RW | A | outio2_usr | |
0x1038 | GPIO2 Reverse | bool | RW | A | outio2_rvs | |
0x103C | GPIO2 OutStatus | enum | RO | - | gpios_status |
7 Special Block Area
0x1800-0x37FF : lut area.