@zaimin78 ,
It looks like I got this working. I modified the kernel to do the following
not use the combo mode for J6L and allow using J6U as independent camera
GPIO109 is used as a shared reset for cameras in slot 1 and 3 (because that's how the signal routing works on VOXL2 + M0135), so the kernel knows that this reset pin is shared
this setup is not set up for camera sync - all cameras are running independently
I have not tested any cameras in J8U, it may not work - but it should be possible to enable it, just need to test it.
You will need to update the kernel on your voxl2:
https://storage.googleapis.com/modalai_public/temp/quad_ov7251_boson/qti-ubuntu-robotics-image-m0054-boot-quad-ov7251.img
this kernel is based off the kernel that ships with SDK 1.6.3
you can test it before overwriting the current kernel: https://docs.modalai.com/voxl2-kernel-build-guide/#test -- you should do to reduce the chance of bricking your VOXL2 (just in case)
HW Configuration:
VOXL2
four OV7251 plugged in to J6L. J6U, J7L, J7U via two M0135 adapters without any mods
boson320 plugged into J8L via M0194 (you can use M0181 also)
there are no shared CCI buses between the ov7251 cameras - slots 0-3 use CCI 0-3 respectively, so no CCI slave address conflicts
SW configuration
appropriate sensormodules placed into /usr/lib/camera/ -- you can get them from /usr/share/modalai/chi-cdk/ov7251 and ../boson folders:
com.qti.sensormodule.ov7251_0.bin
com.qti.sensormodule.ov7251_1.bin
com.qti.sensormodule.ov7251_2.bin
com.qti.sensormodule.ov7251_3.bin
com.qti.sensormodule.boson_4.bin
use provided voxl-camera-server.conf : https://storage.googleapis.com/modalai_public/temp/quad_ov7251_boson/voxl-camera-server-quad-ov7251-boson.conf
may need to modify your Boson resolution from 320x256 to 640x512 if you you have Boson640
Testing
after you have all the cameras connected, boot using the test kernel
test to see if all cameras are detected:
voxl-camera-server -l
...
DEBUG: Cam idx: 0, Cam slot: 0, Slave Address: 0x00E2, Sensor Id: 0x7750
DEBUG: Cam idx: 1, Cam slot: 1, Slave Address: 0x00E2, Sensor Id: 0x7750
DEBUG: Cam idx: 2, Cam slot: 2, Slave Address: 0x00E2, Sensor Id: 0x7750
DEBUG: Cam idx: 3, Cam slot: 3, Slave Address: 0x00E2, Sensor Id: 0x7750
DEBUG: Cam idx: 4, Cam slot: 4, Slave Address: 0x00D4, Sensor Id: 0x00FF
...
start voxl-camera-server
inspect sterams: voxl-inspect-cam ov7251_0 ov7251_1 ov7251_2 ov7251_3 boson
[image: 1785341477366-ee693f10-dcf2-4b76-8181-a11a78db9546-image.jpeg]
Please give it a shot and let me know if it works!
Alex