Well. the result of the i2cdetect -l
:
i2c-35 i2c i2c-2-mux (chan_id 5) I2C adapter
i2c-3 i2c 3190000.i2c I2C adapter
i2c-33 i2c i2c-2-mux (chan_id 3) I2C adapter
i2c-1 i2c c240000.i2c I2C adapter
i2c-31 i2c i2c-2-mux (chan_id 1) I2C adapter
i2c-8 i2c 31e0000.i2c I2C adapter
i2c-6 i2c 31c0000.i2c I2C adapter
i2c-36 i2c i2c-2-mux (chan_id 6) I2C adapter
i2c-4 i2c Tegra BPMP I2C adapter I2C adapter
i2c-34 i2c i2c-2-mux (chan_id 4) I2C adapter
i2c-2 i2c 3180000.i2c I2C adapter
i2c-32 i2c i2c-2-mux (chan_id 2) I2C adapter
i2c-0 i2c 3160000.i2c I2C adapter
i2c-30 i2c i2c-2-mux (chan_id 0) I2C adapter
i2c-37 i2c i2c-2-mux (chan_id 7) I2C adapter
i2c-5 i2c 31b0000.i2c I2C adapter
i know the cameras are connected in i2c-30 and i2c-32, so i check the camera recognition with i2cdetect -r -y 30
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: UU -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: UU -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: UU -- -- -- -- -- -- --
i know that the pca9548 uses the 0x70 and the imx219 camera uses the 0x10 address
also, if i did the dmesg | grep imx
, i get the following
[ 15.352008] imx219 30-0010: tegracam sensor driver:imx219_v2.0.6
[ 15.383320] imx219 32-0010: tegracam sensor driver:imx219_v2.0.6
[ 17.286092] tegra-vi4 15700000.vi: subdev imx219 30-0010 bound
[ 17.305012] tegra-vi4 15700000.vi: subdev imx219 32-0010 bound
Test we did
In the other hand, one of the test we did is set manually the port in the pca9548 to detect the camera, doing the follow:
- Use the default dtb of the tx2 nx
- Find where is connected the pca9548, searching the address 0x70 with
i2cdetect -r -y 9
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: 70 -- -- -- -- -- -- --
- I found in the datasheet of the pca9548 that if i write 0x01, the i2c port will be redirected to the chanel where is the camera connected, i used the command
I2cset -y 6 0x70 0x01
sudo reboot
After the reboot, if i did the ls /dev/
,i can found the video0, as expected.
Now i can see the video using the following command:
gst-launch-1.0 nvarguscamerasrc sensor_id=1 ! ‘video/x-raw(memory:NVMM),width=3820, height=2464, framerate=21/1, format=NV12’ ! nvvidconv flip-method=0 ! ‘video/x-raw,width=960, height=616’ ! nvvidconv ! nvegltransform ! nveglglessink -e
with this, we know that all the hardware connections are good, and don’t should be problem of power.