Have a great day everyone!
Here’s what I managed to do so far:
- Connect two imx219 MIPI cameras and adapt dts accordingly
- Set up rkaiq 3A and tool servers (built by these wonderful people)
- Get good colorful image (basically with isp working) with one cam connected (either one works)
- Get horrible green picture (just like here) from two cameras at the same time with
rkaiq_3A_server
disabled - Get absolutely nothing (aka black picture) with both cameras plugged in and
rkaiq_3A_server
enabled
What that tells me is rkaiq_3A_server
is not working as expected
Now here’s the initial output of rkaiq_3A_server
(note that ‘isOnline’ field of both cameras is 0, meanwhile with just one camera plugged in, it is automatically set to 1):
IPCSERVER:K:cid[1] Process path:/tmp/UNIX.domain1, sockfd:17
XCORE:K:cid[1] rk_aiq_uapi_sysctl_init success. iq:/etc/iqfiles//imx219_rpi-camera-v2-2_default.json
XCORE:K:cid[1] rk_aiq_uapi_sysctl_setMulCamConc: cc:1
CAMHW:E:failed to set hdr mode 0
XCORE:K:cid[1] rk_aiq_uapi_sysctl_prepare success. mode:0
DBG: subscribe events from /dev/video41 success !
DBG: device manager start
CAMHW:K:cid[1] start success. isGroup:0, isOnline:0, isMultiIsp:0, init_ens:0x19fc8ffe473b
XCORE:K:cid[1] rk_aiq_uapi_sysctl_start success.
DBG: rkisp_init engine succeed
DBG: /dev/media3: wait stream start event...
XCORE:E:invalid main scene len!
IPCSERVER:K:cid[0] Process path:/tmp/UNIX.domain0, sockfd:51
XCORE:K:cid[0] rk_aiq_uapi_sysctl_init success. iq:/etc/iqfiles//imx219_rpi-camera-v2_default.json
XCORE:K:cid[0] rk_aiq_uapi_sysctl_setMulCamConc: cc:1
CAMHW:E:failed to set hdr mode 0
XCORE:K:cid[0] rk_aiq_uapi_sysctl_prepare success. mode:0
DBG: subscribe events from /dev/video50 success !
DBG: device manager start
CAMHW:K:cid[0] start success. isGroup:0, isOnline:0, isMultiIsp:0, init_ens:0x19fc8ffe473b
XCORE:K:cid[0] rk_aiq_uapi_sysctl_start success.
DBG: rkisp_init engine succeed
DBG: /dev/media4: wait stream start event...
When I try to execute rkaiq_tool_server
, the tool server itself outputs
[aiqtool][main]:################ Please input camera index to connect
[aiqtool][main]:camera 0 ,please input 0
[aiqtool][main]:camera 1 ,please input 1
[aiqtool][main]:----
[aiqtool][main]:PLEASE INPUT CAMERA INDEX:1
[aiqtool][main]:camera index 1:
[aiqtool][main]:camera socket node /tmp/UNIX.domain1 selected
[aiqtool][Setup]:Linux,Create domain socket success.
[aiqtool][Setup]:Credentials from SO_PEERCRED: pid=3490, euid=0, egid=0
[aiqtool][main]:#### ToolServer connect AIQ success ####
[aiqtool][Process]:TCPServer::Process
[aiqtool][Accepted]:TCPServer::Accepted
^C[aiqtool][Accepted]:socket accept exit
meanwhile rkaiq_3A_server
outputs
IPCSERVER:K:cid[1] socket accept server:/tmp/UNIX.domain1, client:
IPCSERVER:K:cid[1] SocketServer::Recvieve recv_len -1
IPCSERVER:K:cid[1] SocketServer::Recvieve recv_len -1
IPCSERVER:K:cid[1] SocketServer::Recvieve recv_len -1
IPCSERVER:K:cid[1] SocketServer::Recvieve recv_len 0
IPCSERVER:K:cid[1], socket accept close
And /dev/videoX
devices still don’t produce any imaging at any point. I’ve tried doing this with camera 0, I also tried to give /tmp/UNIX.domain1
all the permissions it could ever wish for to no avail…
I’ve also been thinking about building 3A server myself (found at firefly’s gitlab repo) to try to debug it but haven’t managed to actually do it…
Does anybody know how I can make two cameras work? Or could anyone help me with building rkaiq_3A_server
?
Many thanks in advance!