I want to use two pi cameras (V2) at the same time for a project. There are a few ideas that came into my mind

  1. Creating a camera MUX: 14 pins of the CSI port are connected to a bread board, and two cameras are connected to the 14 in parallel, and using a MUX or an AND gate, the 15th(3.3V power supply) is switched using one of the GPIO pins from the raspberry pi
  2. Trying to make 15 of the GPIO pins to act as a CSI port.

Which one is the easiest and efficient way of doing it. If it is the second option, what should I refer to try and make the GPIO pins mimic the CSI ports. I am open to suggestions as well.

  • There are mulitplex boards ala #1 available if you search online. Also, I believe the compute module(s) come with two camera ports.
    – goldilocks
    Dec 26, 2017 at 15:12
  • 1
    This has been extensively discussed on the raspberry-pi.org website. I suggest you have a search there.
    – Oldfart
    Dec 26, 2017 at 22:01

1 Answer 1


I've heard option #2 cannot work because CSI is a high-speed LVDS interface.

Option #1 involves synchronizing/shifting the two signals and thus requires more than discrete gates to deal with timing. It's not impossible to build your own, but quite an endeavor where you'd want to rent a MIPI protocol analyzer for the arduous debugging work.

Among the bridge chips you might find online, two that I'm familiar with are Omnivision OV680 and Lattice CrossLink.

+1 for goldilocks' tip that the Compute Module and Compute Module 3 each have two CSI interfaces.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.