This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TDA4x: four camera display using multicam application

Other Parts Discussed in Thread: TCA6408

Dear Sir,

I have installed latest SDK (08_05_00) on ubuntu 18.04

i have added image sensor code for sony ISX016 and build the imaging folder it got built successfully 

serializer : TI DS90UB913A 

WIDTH : 1280

Height :724

when i execute the single camera application i can able to get the streaming of single camera.

when i execute mulicam application i can able to get one camera view only 

please find the log for multicam application 

root@j7-evm:/opt/vision_apps# ./run_app_multi_cam.sh
APP: Init ... !!!
MEM: Init ... !!!
MEM: Initialized DMA HEAP (fd=4) !!!
MEM: Init ... Done !!!
IPC: Init ... !!!
IPC: Init ... Done !!!
REMOTE_SERVICE: Init ... !!!
REMOTE_SERVICE: Init ... Done !!!
143.459100 s: GTC Frequency = 200 MHz
APP: Init ... Done !!!
143.492366 s: VX_ZONE_INIT:Enabled
143.492416 s: VX_ZONE_ERROR:Enabled
143.492422 s: VX_ZONE_WARNING:Enabled
143.493163 s: VX_ZONE_INIT:[tivxInitLocal:145] Initialization Done !!!
143.495132 s: VX_ZONE_INIT:[tivxHostInitLocal:93] Initialization Done for HOST !!!
madhav ::: num_cameras_enabled 15
143.510563 s: ISS: Enumerating sensors ... !!!
[MCU2_0] 143.510810 s: i am in madhav ImageSensor_RemoteServiceHandler deserilizer..................................
[MCU2_0] 143.510902 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_ENUMERATE
[MCU2_0] 143.511135 s: write 0xfe to TCA6408 register 0x3
[MCU2_0] 143.610345 s: UB960 config start
[ 138.983797] Initializing XFRM netlink socket
146.170873 s: ISS: Enumerating sensors ... found 0 : IMX390-UB953_D3
146.170931 s: ISS: Enumerating sensors ... found 1 : AR0233-UB953_MARS
146.170937 s: ISS: Enumerating sensors ... found 2 : AR0820-UB953_LI
146.170943 s: ISS: Enumerating sensors ... found 3 : UB9xxx_RAW12_TESTPATTERN
146.170948 s: ISS: Enumerating sensors ... found 4 : UB96x_UYVY_TESTPATTERN
146.170953 s: ISS: Enumerating sensors ... found 5 : GW_AR0233_UYVY
146.170958 s: ISS: Enumerating sensors ... found 6 : ISX016-UB913
7 sensor(s) found
Supported sensor list:
a : IMX390-UB953_D3
b : AR0233-UB953_MARS
c : AR0820-UB953_LI
d : UB9xxx_RAW12_TESTPATTERN
e : UB96x_UYVY_TESTPATTERN
f : GW_AR0233_UYVY
g : ISX016-UB913
Select a sensor above or press '0' to autodetect the sensor
[MCU2_0] 146.170621 s: End of UB960 config
[ 141.850956] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[ 141.871388] Bridge firewalling registered
[ 143.070044] process 'docker/tmp/qemu-check891365657/check' started with executable stack
g
Sensor selected : ISX016-UB913
Querying ISX016-UB913
163.923974 s: ISS: Querying sensor [ISX016-UB913] ... !!!
163.924590 s: ISS: Querying sensor [ISX016-UB913] ... Done !!!
LDC Selection Yes(1)/No(0)
Invalid selection
. Try again
LDC Selection Yes(1)/No(0)
[MCU2_0] 163.924203 s: i am in madhav ImageSensor_RemoteServiceHandler deserilizer..................................
[MCU2_0] 163.924293 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_QUERY
[MCU2_0] 163.924403 s: Received Query for ISX016-UB913
0
Max number of cameras supported by sensor ISX016-UB913 = 4
Please enter number of cameras to be enabled
Invalid selection
. Try again
Max number of cameras supported by sensor ISX016-UB913 = 4
Please enter number of cameras to be enabled
4
YUV Input selected. VISS, AEWB and Mosaic nodes will be bypassed.
obj->sensorObj.image_width =1280 obj->sensorObj.image_height 724 obj->sensorObj.num_cameras_enabled =4 189.080448 s: ISS: Initializing sensor [ISX016-UB913], doing IM_SENSOR_CMD_PWRON ... !!!
189.081190 s: ISS: Initializing sensor [ISX016-UB913], doing IM_SENSOR_CMD_CONFIG ... !!!
[MCU2_0] 189.080710 s: i am in madhav ImageSensor_RemoteServiceHandler deserilizer..................................
[MCU2_0] 189.080800 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_PWRON
[MCU2_0] 189.080840 s: IM_SENSOR_CMD_PWRON : channel_mask = 0xf
[MCU2_0] 189.080904 s: ISX016_PowerOn : chId = 0x0
[MCU2_0] 189.080946 s: ISX016_PowerOn : chId = 0x1
[MCU2_0] 189.080983 s: ISX016_PowerOn : chId = 0x2
[MCU2_0] 189.081019 s: ISX016_PowerOn : chId = 0x3
[MCU2_0] 189.081438 s: i am in madhav ImageSensor_RemoteServiceHandler deserilizer..................................
[MCU2_0] 189.081507 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_CONFIG
[MCU2_0] 189.081543 s: Application requested features = 0x158
[MCU2_0]
[MCU2_0] 189.081590 s: UB960 config start
[MCU2_0] 189.337434 s: End of UB960 config
[MCU2_0] 189.337501 s: UB960 config start
[MCU2_0] 189.593444 s: End of UB960 config
[MCU2_0] 189.593508 s: Configuring camera # 0
[MCU2_0] 189.593558 s: Iss_sensor_isx016.c ...i am in ISX016_Config config script
[MCU2_0] 189.593741 s: UB960 config start
[MCU2_0] 189.597447 s: End of UB960 config
[MCU2_0] 189.597502 s: ub953 config start : slaveAddr = 0x74
[MCU2_0] 189.789500 s: End of UB953 config
[MCU2_0] 189.789611 s: iss_sensor_isx016.c ---> ISX016_Sensor_RegConfig regAddr,regValue, delayMilliSec 259 1 0
[MCU2_0] 189.789681 s: Configuring ISX016 imager 0x40.. Please wait till it finishes
[MCU2_0] 190.123356 s: ISX016 config done
[MCU2_0] 190.123424 s: iss_sensor_isx016.c ---> ISX016_Config finished
[MCU2_0] 190.123468 s: Configuring camera # 1
[MCU2_0] 190.123508 s: Iss_sensor_isx016.c ...i am in ISX016_Config config script
[MCU2_0] 190.123696 s: UB960 config start
[MCU2_0] 190.127440 s: End of UB960 config
[MCU2_0] 190.127497 s: ub953 config start : slaveAddr = 0x76
[MCU2_0] 190.319499 s: End of UB953 config
[MCU2_0] 190.319605 s: iss_sensor_isx016.c ---> ISX016_Sensor_RegConfig regAddr,regValue, delayMilliSec 259 1 0
[MCU2_0] 190.319672 s: Configuring ISX016 imager 0x42.. Please wait till it finishes
[MCU2_0] 190.638358 s: ISX016 config done
[MCU2_0] 190.638424 s: iss_sensor_isx016.c ---> ISX016_Config finished
[MCU2_0] 190.638466 s: Configuring camera # 2
[MCU2_0] 190.638506 s: Iss_sensor_isx016.c ...i am in ISX016_Config config script
[MCU2_0] 190.638699 s: UB960 config start
[MCU2_0] 190.642449 s: End of UB960 config
[MCU2_0] 190.642510 s: ub953 config start : slaveAddr = 0x78
[MCU2_0] 190.834502 s: End of UB953 config
[MCU2_0] 190.834610 s: iss_sensor_isx016.c ---> ISX016_Sensor_RegConfig regAddr,regValue, delayMilliSec 259 1 0
[MCU2_0] 190.834681 s: Configuring ISX016 imager 0x44.. Please wait till it finishes
[MCU2_0] 191.153356 s: ISX016 config done
[MCU2_0] 191.153423 s: iss_sensor_isx016.c ---> ISX016_Config finished
[MCU2_0] 191.153464 s: Configuring camera # 3
[MCU2_0] 191.153502 s: Iss_sensor_isx016.c ...i am in ISX016_Config config script
[MCU2_0] 191.153690 s: UB960 config start
[MCU2_0] 191.157437 s: End of UB960 config
[MCU2_0] 191.157493 s: ub953 config start : slaveAddr = 0x7a
[MCU2_0] 191.349507 s: End of UB953 config
[MCU2_0] 191.349613 s: iss_sensor_isx016.c ---> ISX016_Sensor_RegConfig regAddr,regValue, delayMilliSec 259 1 0
[MCU2_0] 191.349684 s: Configuring ISX016 imager 0x46.. Please wait till it finishes
191.668677 s: ISS: Initializing sensor [ISX016-UB913] ... Done !!!
[MCU2_0] 191.668359 s: ISX016 config done
[MCU2_0] 191.668426 s: iss_sensor_isx016.c ---> ISX016_Config finished
[MCU2_0] 191.668465 s: IM_SENSOR_CMD_CONFIG returning status = 0
191.798587 s: ISS: Starting sensor [ISX016-UB913] ... !!!
[MCU2_0] 191.799143 s: i am in madhav ImageSensor_RemoteServiceHandler deserilizer..................................
[MCU2_0] 191.799233 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_STREAM_ON
[MCU2_0] 191.799281 s: IM_SENSOR_CMD_STREAM_ON: channel_mask = 0xf
[MCU2_0] 191.799398 s: UB960 config start
[MCU2_0] 192.055440 s: End of UB960 config
[MCU2_0] 192.055505 s: UB960 config start
[MCU2_0] 192.311437 s: End of UB960 config
[MCU2_0] 192.321402 s: iss_sensor_isx016.c ---> ISX016_StreamOn i2cInstId,sensorI2cAddr, status 6 64 0
[MCU2_0] 192.321603 s: UB960 config start
[MCU2_0] 192.353445 s: End of UB960 config
[MCU2_0] 192.353510 s: UB960 config start
[MCU2_0] 192.609433 s: End of UB960 config
[MCU2_0] 192.609503 s: iss_sensor_isx016.c ---> ISX016_StreamOn finished
[MCU2_0] 192.609552 s:
[MCU2_0] 192.609602 s:
[MCU2_0] I2C: Reading 0x35 registers starting from REG 0x00 of device 0x74 ... !!!
[MCU2_0] 192.609854 s: I2C: 0x0 = 0xb0
[MCU2_0] 192.610091 s: I2C: 0x1 = 0x30
[MCU2_0] 192.610394 s: I2C: 0x2 = 0x20
[MCU2_0] 192.610633 s: I2C: 0x3 = 0xc5
[MCU2_0] 192.610868 s: I2C: 0x4 = 0x80
[MCU2_0] 192.611098 s: I2C: 0x5 = 0x14
[MCU2_0] 192.611386 s: I2C: 0x6 = 0x7a
[MCU2_0] 192.611630 s: I2C: 0x7 = 0x0
[MCU2_0] 192.611867 s: I2C: 0x8 = 0x0
[MCU2_0] 192.612095 s: I2C: 0x9 = 0x0
[MCU2_0] 192.612378 s: I2C: 0xa = 0x0
[MCU2_0] 192.612626 s: I2C: 0xb = 0x0
[MCU2_0] 192.612862 s: I2C: 0xc = 0x15
[MCU2_0] 192.613089 s: I2C: 0xd = 0x55
[MCU2_0] 192.613370 s: I2C: 0xe = 0x35
[MCU2_0] 192.613608 s: I2C: 0xf = 0x0
[MCU2_0] 192.613838 s: I2C: 0x10 = 0x17
[MCU2_0] 192.614074 s: I2C: 0x11 = 0x32
[MCU2_0] 192.614368 s: I2C: 0x12 = 0x32
[MCU2_0] 192.614617 s: I2C: 0x13 = 0x0
[MCU2_0] 192.614854 s: I2C: 0x14 = 0x0
[MCU2_0] 192.615081 s: I2C: 0x15 = 0x31
[MCU2_0] 192.615364 s: I2C: 0x16 = 0x80
[MCU2_0] 192.615614 s: I2C: 0x17 = 0x0
[MCU2_0] 192.615854 s: I2C: 0x18 = 0x0
[MCU2_0] 192.616089 s: I2C: 0x19 = 0x0
[MCU2_0] 192.616365 s: I2C: 0x1a = 0x0
[MCU2_0] 192.616611 s: I2C: 0x1b = 0x0
[MCU2_0] 192.616846 s: I2C: 0x1c = 0x0
[MCU2_0] 192.617073 s: I2C: 0x1d = 0xa0
[MCU2_0] 192.617302 s: I2C: 0x1e = 0xfe
[MCU2_0] 192.617594 s: I2C: 0x1f = 0x0
[MCU2_0] 192.617831 s: I2C: 0x20 = 0xe
[MCU2_0] 192.618056 s: I2C: 0x21 = 0x1c
[MCU2_0] 192.618283 s: I2C: 0x22 = 0x29
[MCU2_0] 192.618570 s: I2C: 0x23 = 0x0
[MCU2_0] 192.618806 s: I2C: 0x24 = 0x0
[MCU2_0] 192.619040 s: I2C: 0x25 = 0x0
[MCU2_0] 192.619268 s: I2C: 0x26 = 0x0
[MCU2_0] 192.619505 s: I2C: 0x27 = 0x0
[MCU2_0] 192.619738 s: I2C: 0x28 = 0x25
[MCU2_0] 192.619965 s: I2C: 0x29 = 0x6
[MCU2_0] 192.620193 s: I2C: 0x2a = 0x0
[MCU2_0] 192.620468 s: I2C: 0x2b = 0x0
[MCU2_0] 192.620712 s: I2C: 0x2c = 0x0
[MCU2_0] 192.620938 s: I2C: 0x2d = 0x0
[MCU2_0] 192.621165 s: I2C: 0x2e = 0x0
[MCU2_0] 192.621407 s: I2C: 0x2f = 0x0
[MCU2_0] 192.621649 s: I2C: 0x30 = 0x0
[MCU2_0] 192.621870 s: I2C: 0x31 = 0x0
[MCU2_0] 192.622103 s: I2C: 0x32 = 0x0
[MCU2_0] 192.622379 s: I2C: 0x33 = 0xfe
[MCU2_0] 192.622621 s: I2C: 0x34 = 0x80
[MCU2_0] 192.622649 s:
[MCU2_0] 192.622693 s:
[MCU2_0] I2C: Reading 0xfe registers starting from REG 0x00 of device 0x3d ... !!!
[MCU2_0] 192.622878 s: I2C: 0x0 = 0x7a
[MCU2_0] 192.623041 s: I2C: 0x1 = 0x0
[MCU2_0] 192.623204 s: I2C: 0x2 = 0x1e
[MCU2_0] 192.623386 s: I2C: 0x3 = 0x40
[MCU2_0] 192.623561 s: I2C: 0x4 = 0xd0
[MCU2_0] 192.623726 s: I2C: 0x5 = 0x1
[MCU2_0] 192.623889 s: I2C: 0x6 = 0x0
[MCU2_0] 192.624051 s: I2C: 0x7 = 0xfe
[MCU2_0] 192.624212 s: I2C: 0x8 = 0x1c
[MCU2_0] 192.624386 s: I2C: 0x9 = 0x10
[MCU2_0] 192.624561 s: I2C: 0xa = 0x7a
[MCU2_0] 192.624727 s: I2C: 0xb = 0x7a
[MCU2_0] 192.624890 s: I2C: 0xc = 0xf
[MCU2_0] 192.625052 s: I2C: 0xd = 0xb0
[MCU2_0] 192.625214 s: I2C: 0xe = 0x1f
[MCU2_0] 192.625389 s: I2C: 0xf = 0xff
[MCU2_0] 192.625563 s: I2C: 0x10 = 0x83
[MCU2_0] 192.625732 s: I2C: 0x11 = 0xa3
[MCU2_0] 192.625897 s: I2C: 0x12 = 0xc3
[MCU2_0] 192.626062 s: I2C: 0x13 = 0xe3
[MCU2_0] 192.626225 s: I2C: 0x14 = 0x0
[MCU2_0] 192.626441 s: I2C: 0x15 = 0x0
[MCU2_0] 192.626614 s: I2C: 0x16 = 0x0
[MCU2_0] 192.626779 s: I2C: 0x17 = 0x0
[MCU2_0] 192.626942 s: I2C: 0x18 = 0x0
[MCU2_0] 192.627104 s: I2C: 0x19 = 0x0
[MCU2_0] 192.627267 s: I2C: 0x1a = 0x0
[MCU2_0] 192.627449 s: I2C: 0x1b = 0x0
[MCU2_0] 192.627626 s: I2C: 0x1c = 0x0
[MCU2_0] 192.627794 s: I2C: 0x1d = 0x0
[MCU2_0] 192.627958 s: I2C: 0x1e = 0x4
[MCU2_0] 192.628121 s: I2C: 0x1f = 0x0
[MCU2_0] 192.628284 s: I2C: 0x20 = 0x0
[MCU2_0] 192.628509 s: I2C: 0x21 = 0x3
[MCU2_0] 192.628685 s: I2C: 0x22 = 0x0
[MCU2_0] 192.628852 s: I2C: 0x23 = 0x0
[MCU2_0] 192.629013 s: I2C: 0x24 = 0x0
[MCU2_0] 192.629175 s: I2C: 0x25 = 0x0
[MCU2_0] 192.629383 s: I2C: 0x26 = 0x0
[MCU2_0] 192.629561 s: I2C: 0x27 = 0x0
[MCU2_0] 192.629728 s: I2C: 0x28 = 0x0
[MCU2_0] 192.629891 s: I2C: 0x29 = 0x0
[MCU2_0] 192.630053 s: I2C: 0x2a = 0x0
[MCU2_0] 192.630213 s: I2C: 0x2b = 0x0
[MCU2_0] 192.630387 s: I2C: 0x2c = 0x0
[MCU2_0] 192.630571 s: I2C: 0x2d = 0x0
[MCU2_0] 192.630767 s: I2C: 0x2e = 0x0
[MCU2_0] 192.630931 s: I2C: 0x2f = 0x0
[MCU2_0] 192.631108 s: I2C: 0x30 = 0x0
[MCU2_0] 192.631270 s: I2C: 0x31 = 0x0
[MCU2_0] 192.631461 s: I2C: 0x32 = 0x1
[MCU2_0] 192.631636 s: I2C: 0x33 = 0x3
[MCU2_0] 192.631805 s: I2C: 0x34 = 0x0
[MCU2_0] 192.631968 s: I2C: 0x35 = 0x1
[MCU2_0] 192.632128 s: I2C: 0x36 = 0x0
[MCU2_0] 192.632289 s: I2C: 0x37 = 0x1
[MCU2_0] 192.632515 s: I2C: 0x38 = 0x0
[MCU2_0] 192.632690 s: I2C: 0x39 = 0x0
[MCU2_0] 192.632854 s: I2C: 0x3a = 0x0
[MCU2_0] 192.633016 s: I2C: 0x3b = 0x0
[MCU2_0] 192.633178 s: I2C: 0x3c = 0x0
[MCU2_0] 192.633389 s: I2C: 0x3d = 0x0
[MCU2_0] 192.633567 s: I2C: 0x3e = 0x0
[MCU2_0] 192.633734 s: I2C: 0x3f = 0x0
[MCU2_0] 192.633900 s: I2C: 0x40 = 0x0
[MCU2_0] 192.634064 s: I2C: 0x41 = 0xf0
[MCU2_0] 192.634226 s: I2C: 0x42 = 0x71
[MCU2_0] 192.634446 s: I2C: 0x43 = 0x1
[MCU2_0] 192.634618 s: I2C: 0x44 = 0x0
[MCU2_0] 192.634784 s: I2C: 0x45 = 0x0
[MCU2_0] 192.634945 s: I2C: 0x46 = 0x20
[MCU2_0] 192.635107 s: I2C: 0x47 = 0x21
[MCU2_0] 192.635268 s: I2C: 0x48 = 0x0
[MCU2_0] 192.635450 s: I2C: 0x49 = 0x0
[MCU2_0] 192.635626 s: I2C: 0x4a = 0x0
[MCU2_0] 192.635793 s: I2C: 0x4b = 0x12
[MCU2_0] 192.635955 s: I2C: 0x4c = 0x38
[MCU2_0] 192.636116 s: I2C: 0x4d = 0xf3
[MCU2_0] 192.636278 s: I2C: 0x4e = 0xed
[MCU2_0] 192.636504 s: I2C: 0x4f = 0x25
[MCU2_0] 192.636679 s: I2C: 0x50 = 0x20
[MCU2_0] 192.636844 s: I2C: 0x51 = 0x0
[MCU2_0] 192.637007 s: I2C: 0x52 = 0x0
[MCU2_0] 192.637169 s: I2C: 0x53 = 0x0
[MCU2_0] 192.637382 s: I2C: 0x54 = 0x0
[MCU2_0] 192.637561 s: I2C: 0x55 = 0x0
[MCU2_0] 192.637729 s: I2C: 0x56 = 0x0
[MCU2_0] 192.637892 s: I2C: 0x57 = 0x0
[MCU2_0] 192.638056 s: I2C: 0x58 = 0x58
[MCU2_0] 192.638218 s: I2C: 0x59 = 0x0
[MCU2_0] 192.638440 s: I2C: 0x5a = 0x0
[MCU2_0] 192.638617 s: I2C: 0x5b = 0xb0
[MCU2_0] 192.638785 s: I2C: 0x5c = 0x0
[MCU2_0] 192.638948 s: I2C: 0x5d = 0xb0
[MCU2_0] 192.639110 s: I2C: 0x5e = 0xe0
[MCU2_0] 192.639273 s: I2C: 0x5f = 0x0
[MCU2_0] 192.639454 s: I2C: 0x60 = 0x0
[MCU2_0] 192.639625 s: I2C: 0x61 = 0x0
[MCU2_0] 192.639791 s: I2C: 0x62 = 0x0
[MCU2_0] 192.639954 s: I2C: 0x63 = 0x0
[MCU2_0] 192.640117 s: I2C: 0x64 = 0x0
[MCU2_0] 192.640280 s: I2C: 0x65 = 0xf4
[MCU2_0] 192.640506 s: I2C: 0x66 = 0x8c
[MCU2_0] 192.640679 s: I2C: 0x67 = 0x0
[MCU2_0] 192.640847 s: I2C: 0x68 = 0x0
[MCU2_0] 192.641009 s: I2C: 0x69 = 0x0
[MCU2_0] 192.641171 s: I2C: 0x6a = 0x0
[MCU2_0] 192.641384 s: I2C: 0x6b = 0x0
[MCU2_0] 192.641557 s: I2C: 0x6c = 0x0
[MCU2_0] 192.641725 s: I2C: 0x6d = 0x6f
[MCU2_0] 192.641888 s: I2C: 0x6e = 0x88
[MCU2_0] 192.642048 s: I2C: 0x6f = 0x88
[MCU2_0] 192.642211 s: I2C: 0x70 = 0xde
[MCU2_0] 192.642387 s: I2C: 0x71 = 0xec
[MCU2_0] 192.642562 s: I2C: 0x72 = 0xff
[MCU2_0] 192.642730 s: I2C: 0x73 = 0x2
[MCU2_0] 192.642895 s: I2C: 0x74 = 0xd4
[MCU2_0] 192.643059 s: I2C: 0x75 = 0xa
[MCU2_0] 192.643221 s: I2C: 0x76 = 0x0
[MCU2_0] 192.643442 s: I2C: 0x77 = 0xc5
[MCU2_0] 192.643614 s: I2C: 0x78 = 0x0
193.214924 s: ISS: Starting sensor [ISX016-UB913] ... !!!
[MCU2_0] 192.643779 s: I2C: 0x79 = 0x1
[MCU2_0] 192.643945 s: I2C: 0x7a = 0xf
[MCU2_0] 192.644109 s: I2C: 0x7b = 0xff
[MCU2_0] 192.644270 s: I2C: 0x7c = 0xc0
[MCU2_0] 192.644449 s: I2C: 0x7d = 0x0
[MCU2_0] 192.644626 s: I2C: 0x7e = 0x0
[MCU2_0] 192.644793 s: I2C: 0x7f = 0x0
[MCU2_0] 192.644957 s: I2C: 0x80 = 0x0
[MCU2_0] 192.645119 s: I2C: 0x81 = 0x0


=========================
Demo : Camera Demo
=========================

s: Save CSIx, VISS and LDC outputs

p: Print performance statistics

x: Exit

[MCU2_0] 192.645283 s: I2C: 0x82 = 0x0
Enter Choice:
[MCU2_0] 192.645508 s: I2C: 0x83 = 0x0


=========================
Demo : Camera Demo
=========================

s: Save CSIx, VISS and LDC outputs

p: Print performance statistics

x: Exit

MCU2_0]    193.299097 s:  VX_ZONE_WARNING:[tivxCaptureSetTimeout:796]  CAPTURE: WARNING: Error frame not provided using tivxCaptureRegisterErrorFrame, defaulting to waiting forever !!!

please let me know how i can able to get four cam view

Thanks,

Madhav

  • Hi Madhav,

    If single camera is working in both single_camera and multi-camera application, then it looks like SERDES is not programmed correctly or all sensor are not programmed correct. Can you please check in these lines?

    Regards,

    Brijesh

  • Dear Sir,

    FYI camera sensor output is YUV422 8 bit

    as mentioned in the code if YUV input is there then mosaic will be disabled as given below 

      if(1 == obj->sensorObj.sensor_out_format)
    {
    printf("YUV Input selected. VISS, AEWB and Mosaic nodes will be bypassed. \n");
    obj->enable_viss = 0;
    obj->enable_aewb = 0;
    obj->enable_mosaic = 0;
    }
    else
    {
    obj->enable_viss = 1;
    obj->enable_aewb = 1;
    obj->enable_mosaic = 1;

    so processed output for one of the captured channel is displayed through DSS on HDMI or eDP display as per the guide (by default it is showing cam 0 output on display). how can i select other cam like 2 3 4 for display 

    please let me know how i can able to show mosaic display (4 cam output) also 

    Thanks,

    Madhav

  • Madhav,

    You would have to use one of LDC or DSSM2M path to convert YUV422 to YUV420 format and then can use Mosaic node to display all 4 camera input.. Mosaic does not support YUV422 format.

    Regards,

    Brijesh 

  • Dear Sir,

    the multi-cam application by-default it is showing cam 0 output on display.

    right now we are focusing how to display cam 1 or 2 or 3 output.

    i have made some changes in the code  

    instead captureObj->raw_image_arr[0] i have used captureObj->raw_image_arr[1]

     captureObj->node = tivxCaptureNode(graph, captureObj->config, captureObj->raw_image_arr[0]);

    and same is passing to display.

    i got the below error please let me know what things need to be changed to display cam 1 or 2 or 3 display

    root@j7-evm:/opt/vision_apps# ./run_app_multi_cam.sh
    APP: Init ... !!!
    MEM: Init ... !!!
    MEM: Initialized DMA HEAP (fd=4) !!!
    MEM: Init ... Done !!!
    IPC: Init ... !!!
    IPC: Init ... Done !!!
    REMOTE_SERVICE: Init ... !!!
    REMOTE_SERVICE: Init ... Done !!!
    112.826964 s: GTC Frequency = 200 MHz
    APP: Init ... Done !!!
    112.827048 s: VX_ZONE_INIT:Enabled
    112.827054 s: VX_ZONE_ERROR:Enabled
    112.827059 s: VX_ZONE_WARNING:Enabled
    112.827720 s: VX_ZONE_INIT:[tivxInitLocal:145] Initialization Done !!!
    112.830083 s: VX_ZONE_INIT:[tivxHostInitLocal:93] Initialization Done for HOST !!!
    madhav ::: num_cameras_enabled 1
    112.834058 s: ISS: Enumerating sensors ... !!!
    [MCU2_0] 112.834300 s: i am in madhav ImageSensor_RemoteServiceHandler deserilizer..................................
    [MCU2_0] 112.834390 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_ENUMERATE
    [MCU2_0] 112.834691 s: write 0xfe to TCA6408 register 0x3
    [MCU2_0] 112.934444 s: UB960 config start
    115.494962 s: ISS: Enumerating sensors ... found 0 : IMX390-UB953_D3
    115.494986 s: ISS: Enumerating sensors ... found 1 : AR0233-UB953_MARS
    115.495007 s: ISS: Enumerating sensors ... found 2 : AR0820-UB953_LI
    115.495013 s: ISS: Enumerating sensors ... found 3 : UB9xxx_RAW12_TESTPATTERN
    115.495018 s: ISS: Enumerating sensors ... found 4 : UB96x_UYVY_TESTPATTERN
    115.495023 s: ISS: Enumerating sensors ... found 5 : GW_AR0233_UYVY
    115.495028 s: ISS: Enumerating sensors ... found 6 : ISX016-UB913
    7 sensor(s) found
    Supported sensor list:
    a : IMX390-UB953_D3
    b : AR0233-UB953_MARS
    c : AR0820-UB953_LI
    d : UB9xxx_RAW12_TESTPATTERN
    e : UB96x_UYVY_TESTPATTERN
    f : GW_AR0233_UYVY
    g : ISX016-UB913
    Select a sensor above or press '0' to autodetect the sensor
    [MCU2_0] 115.494718 s: End of UB960 config
    g
    Sensor selected : ISX016-UB913
    Querying ISX016-UB913
    118.032513 s: ISS: Querying sensor [ISX016-UB913] ... !!!
    118.033047 s: ISS: Querying sensor [ISX016-UB913] ... Done !!!
    LDC Selection Yes(1)/No(0)
    Invalid selection
    . Try again
    LDC Selection Yes(1)/No(0)
    [MCU2_0] 118.032743 s: i am in madhav ImageSensor_RemoteServiceHandler deserilizer..................................
    [MCU2_0] 118.032828 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_QUERY
    [MCU2_0] 118.032867 s: Received Query for ISX016-UB913
    0
    Max number of cameras supported by sensor ISX016-UB913 = 4
    Please enter number of cameras to be enabled
    Invalid selection
    . Try again
    Max number of cameras supported by sensor ISX016-UB913 = 4
    Please enter number of cameras to be enabled
    4
    entered in app query image sensor ........
    YUV Input selected. VISS, AEWB and Mosaic nodes will be bypassed.
    obj->sensorObj.image_width =1280 obj->sensorObj.image_height 724 obj->sensorObj.num_cameras_enabled =4 Creating context done!
    Kernel loading done!
    122.460678 s: ISS: Initializing sensor [ISX016-UB913], doing IM_SENSOR_CMD_PWRON ... !!!
    122.461368 s: ISS: Initializing sensor [ISX016-UB913], doing IM_SENSOR_CMD_CONFIG ... !!!
    [MCU2_0] 122.460901 s: i am in madhav ImageSensor_RemoteServiceHandler deserilizer..................................
    [MCU2_0] 122.460987 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_PWRON
    [MCU2_0] 122.461027 s: IM_SENSOR_CMD_PWRON : channel_mask = 0xf
    [MCU2_0] 122.461089 s: ISX016_PowerOn : chId = 0x0
    [MCU2_0] 122.461131 s: ISX016_PowerOn : chId = 0x1
    [MCU2_0] 122.461167 s: ISX016_PowerOn : chId = 0x2
    [MCU2_0] 122.461201 s: ISX016_PowerOn : chId = 0x3
    [MCU2_0] 122.461616 s: i am in madhav ImageSensor_RemoteServiceHandler deserilizer..................................
    [MCU2_0] 122.461684 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_CONFIG
    [MCU2_0] 122.461719 s: Application requested features = 0x158
    [MCU2_0]
    [MCU2_0] 122.461762 s: UB960 config start
    [MCU2_0] 122.717543 s: End of UB960 config
    [MCU2_0] 122.717608 s: UB960 config start
    [MCU2_0] 122.973538 s: End of UB960 config
    [MCU2_0] 122.973598 s: Configuring camera # 0
    [MCU2_0] 122.973645 s: Iss_sensor_isx016.c ...i am in ISX016_Config config script
    [MCU2_0] 122.973831 s: UB960 config start
    [MCU2_0] 122.977537 s: End of UB960 config
    [MCU2_0] 122.977591 s: ub953 config start : slaveAddr = 0x74
    [MCU2_0] 123.169614 s: End of UB953 config
    [MCU2_0] 123.169723 s: iss_sensor_isx016.c ---> ISX016_Sensor_RegConfig regAddr,regValue, delayMilliSec 259 1 0
    [MCU2_0] 123.169789 s: Configuring ISX016 imager 0x40.. Please wait till it finishes
    [MCU2_0] 123.488457 s: ISX016 config done
    [MCU2_0] 123.488523 s: iss_sensor_isx016.c ---> ISX016_Config finished
    [MCU2_0] 123.488566 s: Configuring camera # 1
    [MCU2_0] 123.488606 s: Iss_sensor_isx016.c ...i am in ISX016_Config config script
    [MCU2_0] 123.488800 s: UB960 config start
    [MCU2_0] 123.492540 s: End of UB960 config
    [MCU2_0] 123.492598 s: ub953 config start : slaveAddr = 0x76
    [MCU2_0] 123.684604 s: End of UB953 config
    [MCU2_0] 123.684712 s: iss_sensor_isx016.c ---> ISX016_Sensor_RegConfig regAddr,regValue, delayMilliSec 259 1 0
    [MCU2_0] 123.684780 s: Configuring ISX016 imager 0x42.. Please wait till it finishes
    [MCU2_0] 124.003459 s: ISX016 config done
    [MCU2_0] 124.003525 s: iss_sensor_isx016.c ---> ISX016_Config finished
    [MCU2_0] 124.003568 s: Configuring camera # 2
    [MCU2_0] 124.003607 s: Iss_sensor_isx016.c ...i am in ISX016_Config config script
    [MCU2_0] 124.003802 s: UB960 config start
    [MCU2_0] 124.007539 s: End of UB960 config
    [MCU2_0] 124.007596 s: ub953 config start : slaveAddr = 0x78
    [MCU2_0] 124.199610 s: End of UB953 config
    [MCU2_0] 124.199720 s: iss_sensor_isx016.c ---> ISX016_Sensor_RegConfig regAddr,regValue, delayMilliSec 259 1 0
    [MCU2_0] 124.199790 s: Configuring ISX016 imager 0x44.. Please wait till it finishes
    [MCU2_0] 124.518461 s: ISX016 config done
    [MCU2_0] 124.518526 s: iss_sensor_isx016.c ---> ISX016_Config finished
    [MCU2_0] 124.518567 s: Configuring camera # 3
    [MCU2_0] 124.518603 s: Iss_sensor_isx016.c ...i am in ISX016_Config config script
    [MCU2_0] 124.518791 s: UB960 config start
    [MCU2_0] 124.522539 s: End of UB960 config
    [MCU2_0] 124.522595 s: ub953 config start : slaveAddr = 0x7a
    [MCU2_0] 124.714603 s: End of UB953 config
    [MCU2_0] 124.714708 s: iss_sensor_isx016.c ---> ISX016_Sensor_RegConfig regAddr,regValue, delayMilliSec 259 1 0
    [MCU2_0] 124.714778 s: Configuring ISX016 imager 0x46.. Please wait till it finishes
    125.048765 s: ISS: Initializing sensor [ISX016-UB913] ... Done !!!
    Sensor init done!
    Display init done!
    App Init Done!
    Graph create done!
    [MCU2_0] 125.048460 s: ISX016 config done
    [MCU2_0] 125.048526 s: iss_sensor_isx016.c ---> ISX016_Config finished
    [MCU2_0] 125.048568 s: IM_SENSOR_CMD_CONFIG returning status = 0
    Capture graph done!
    Display graph done!
    125.058379 s: VX_ZONE_ERROR:[ownGraphPipelineValidateRefsList:129] Invalid graph parameter ref list!
    125.058388 s: VX_ZONE_ERROR:[vxSetGraphScheduleConfig:210] Graph parameter refs list at index 0 contains inconsistent meta data. Please ensure that all buffers in list contain the same meta data
    App Run Graph Done!
    Capture delete done!
    VISS delete done!
    AEWB delete done!
    Img Mosaic delete done!
    Display delete done!
    Graph delete done!
    App Delete Graph Done!
    125.058468 s: ISS: De-initializing sensor [ISX016-UB913] ... !!!
    125.058897 s: ISS: De-initializing sensor [ISX016-UB913] ... Done !!!
    Sensor deinit done!
    Capture deinit done!
    Display deinit done!
    Kernels unload done!
    125.059298 s: VX_ZONE_WARNING:[vxReleaseContext:1060] Found a reference 0xffffbde0fca0 of type 0000080f at external count 1, internal count 0, releasing it
    125.059305 s: VX_ZONE_WARNING:[vxReleaseContext:1062] Releasing reference (name=image_98) now as a part of garbage collection
    Release context done!
    App De-init Done!
    125.059337 s: VX_ZONE_INIT:[tivxHostDeInitLocal:107] De-Initialization Done for HOST !!!
    [MCU2_0] 125.058680 s: i am in madhav ImageSensor_RemoteServiceHandler deserilizer..................................
    125.063704 s: VX_ZONE_INIT:[tivxDeInitLocal:223] De-Initialization Done !!!
    APP: Deinit ... !!!
    REMOTE_SERVICE: Deinit ... !!!
    REMOTE_SERVICE: Deinit ... Done !!!
    IPC: Deinit ... !!!
    IPC: DeInit ... Done !!!
    MEM: Deinit ... !!!
    DDR_SHARED_MEM: Alloc's: 2 alloc's of 260 bytes
    DDR_SHARED_MEM: Free's : 2 free's of 260 bytes
    DDR_SHARED_MEM: Open's : 0 allocs of 0 bytes
    DDR_SHARED_MEM: Total size: 536870912 bytes
    MEM: Deinit ... Done !!!
    APP: Deinit ... Done !!!

    Thanks,

    Madhav

  • Madhav,

    That's not correct way to select camera 1 or 2. Please keep the original code as it is and then, there is a control command in the display node to select the active channel. After the usecase starts, you could switch the active channel to any of the camera input.. 

    You could refer to example in ti-processor-sdk-rtos-j721e-evm-08_05_00_11\tiovx\kernels_j7\hwa\test\test_capture_display.c test file to understand how to switch channels in the display.

    Regards,

    Brijesh

  • Dear Sir,

    i am adding below code after this function app_create_graph_display(obj->graph, &obj->displayObj, display_in_image);

    /* Create User Data object for channel switching */

    obj->channel_prms.active_channel_id = 1;
    obj->switch_ch_obj = vxCreateUserDataObject(obj->context,
    "tivx_display_select_channel_params_t",
    sizeof(tivx_display_select_channel_params_t), &obj->channel_prms);
    if (vxGetStatus((vx_reference)obj->switch_ch_obj) != VX_SUCCESS)
    {
    APP_PRINTF("switch_ch_obj create failed\n");
    }

    obj->refs[0] = (vx_reference)obj->switch_ch_obj;


    obj->channel_prms.active_channel_id =
    (obj->channel_prms.active_channel_id + 1) % 4;
    vxCopyUserDataObject(obj->switch_ch_obj, 0,
    sizeof(tivx_display_select_channel_params_t),
    &obj->channel_prms, VX_WRITE_ONLY, VX_MEMORY_TYPE_HOST);
    tivxNodeSendCommand(obj->displayObj.disp_node, 0,
    TIVX_DISPLAY_SELECT_CHANNEL, obj->refs, 1u);

    is it right ?

    Thanks,

    Madhav

  • Yup, it looks to be fine, but i would also suggest to refer to existing, as suggested in the above test. 

    Regards,

    Brijesh