Arducam B0388 Multi-Camera Adapter on Jetson Nano can't switch cameras, stuck at 1/4 resolution

Hi everyone, hoping someone can point me in the right direction. I have an Arducam B0388 multi-camera adapter connected to an Nvidia Jetson Nano, and I can’t figure out how to select which camera I’m capturing from. No matter what I try, I always end up with a combined image at 1/4 resolution from each camera instead of a full frame from a single camera.

Welcome! A few things to narrow this down: which I2C bus do you have the adapter/HAT connected to, and have you confirmed the adapter is actually detected on the bus? Also, can you share what you’ve tried so far to switch between cameras?

Sure. The HAT is connected on I2C bus 1. I ran i2cdetect and the adapter shows up and responds fine, and I can capture images, so the connection itself seems okay. The problem is only with the channel selection. I’ve been following the Multi-Camera Adapter demo from the MIPI_Camera repo on GitHub (Multi-Camera-Adapter-Demo.py) and also the composition mode switching steps from the Arducam docs. Honestly the multiplexing has never worked properly since I got the board.

Got it. Since image capture works, the issue is likely with the composition mode switch itself rather than the camera connection. When you try to switch to single-channel mode, what exact command are you running? The bus number in the docs examples matters a lot here, and it can vary by platform.

I used the command from the docs with bus 10, something like: i2cset -y 10 0x24 0x24 0x0 to switch to single channel. It doesn’t seem to do anything — I still get the 1/4 resolution output from all cameras. I don’t have any logs captured beyond that, but i2cdetect on bus 1 looks normal.

That’s the issue. On the Jetson Nano, the composition mode control is on I2C bus 7, not bus 10. The bus number is platform-specific — the docs example uses bus 10 for other setups, but on the Nano this control lives on bus 7. Try this instead: i2cset -y 7 0x24 0x24 0x0. You can double-check the address is reachable by running i2cdetect -y 7 and looking for 0x24. Once single-channel mode is set on bus 7, you should get a full-resolution capture from the selected camera instead of the 1/4 combined frame.

Ah, that would explain a lot — I was assuming the bus 10 from the docs was universal across boards. Let me give bus 7 a try and see if the adapter switches properly.

To summarize the workaround: on the Jetson Nano, use I2C bus 7 (not bus 10) for the camera array composition mode control. For example, to switch to single channel run: i2cset -y 7 0x24 0x24 0x0. The key point is that the bus number differs by platform — bus 10 is used on other boards, but the Nano exposes the composition mode control on bus 7. Let us know how it goes once you’ve tried that command.