Other Parts Discussed in Thread: ALP
Currently we are working on the following setup:
AR0220 Camera <-> 953 Serializer <-> FAKRA Cable <-> 954 De-Serializer* <-> MIPI Adapter* <-> S32V234 EVB2
We tried the attached script in ALP tool to initialize the camera but were unable to do so.
The output we received in the ALP tool is also attached.
Note: GPIO3 of the serializer is connected to the reset pin of the camera.
import time #reset and initialize sensor from DES using 953 # Set up IDs UB954 = 0x60 UB953ID = 0x30 UB953 = 0x18 SensorID = 0x20 Sensor = 0xC4 # Set up Port0 board.WriteI2C(UB954, 0x4C, 0x01) # Set up Back Channel Config (0x58) board.WriteI2C(UB954,0x58,0x5E) # Set up SER ID #board.WriteI2C(UB954,0x5B,UB953ID) # Set up SER Alias ID board.WriteI2C(UB954,0x5C,UB953) # Set up Slave/Camera ID board.WriteI2C(UB954,0x5D,SensorID) # Set up Slave/Camera Alias ID board.WriteI2C(UB954,0x65,Sensor) # Set GPIO2 and GPIO3 to outputs, where GPIO3 = SER_RESETB_IMG and GPIO2 = SER_TRIG_IMG board.WriteI2C(UB953,0x0E,0x80) board.WriteI2C(UB953,0x0D,0x08) # Set GPIO2 and GPIO3 to High - bring sensor out of power down mode #board.WriteI2C(UB953,0x0D,0x0C) time.sleep(0.1) # Bring GPIO3 low to place sensor in reset #board.WriteI2C(UB953,0x0D,0x08) #time.sleep(1) # Bring GPIO3 high again to prepare sensor for initialization #board.WriteI2C(UB953,0x0D,0x0C) print "Sensor Reset" #Initialize Sensor #get configuration requirements from sensor manufacturer & write to sensor # board.WriteI2C(Sensor, regAddr, value) #if two byte address are required use, board.WriteI2C(Sensor, regAddr byte 1, [regAddr byte 2, value]) print "Writting" board.WriteI2C(Sensor,0x3008,0x071C) print "Sleeping" time.sleep(1) print "Reading = ",hex(board.ReadI2C(Sensor,0x3008)) #repeat as required # Seeing if CSI data is transmitting print "CSI Error = ",hex(board.ReadI2C(UB953, 0x5C, 1)) print "Packet Header data = ", hex(board.ReadI2C(UB953, 0x61, 1)) print "Packer Header Word Count 0 = ", hex(board.ReadI2C(UB953, 0x62, 1)) print "Packer Header Word Count 1 = ", hex(board.ReadI2C(UB953, 0x63, 1))