Thanks for the reply. I plan on using this camera with a custom board that I am designing. Since you said:
Under normal circumstances, all register values are configured and you do not need to modify them
Should I bother connecting the I2C lines to the camera? If I will never have a need to communicate with the camera over I2C, then leaving the camera’s I2C lines floating prevents the possibility of there being bus collisions due to the camera.
Need i2c to send the configuration to the camera.
You can also use other hardware to send this i2c, but it is not recommended, you need to modify the driver.
Check my understanding: I2C is needed for initial configuration of the registers. Under normal circumstances, the registers do not need to be adjusted after initial configuration. Therefore, under normal circumstances the camera does not talk to the device over I2C except for during initial configuration
I am still unclear on what the I2C address of the camera is. I see in the files you linked all the addresses for the registers, but I haven’t seen the I2C address for the device itself. I’d like to know this so that I don’t confuse the camera with any other devices on the same I2C bus.
To find the original i2c address of the camera, you can refer to the device tree source file that we provide on GitHub. The device tree source file contains the configuration and parameters of the camera module, including the i2c address.
In this file, you can look for the line that says “reg = <0x10>;” under the “[email protected]” node. This means that the i2c address of the camera is 0x10 in hexadecimal format.
In addition, the driver to control the motor is ak7375, the address is “reg = <0x0c>;” , you need to adjust its value to control the motor.
I hope this answers your question and helps you use the camera more easily.