Skip to content

Add documentation of the 22-pin camera connector #3155

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
kbingham opened this issue Oct 11, 2023 · 24 comments
Open

Add documentation of the 22-pin camera connector #3155

kbingham opened this issue Oct 11, 2023 · 24 comments
Assignees
Labels
backlog We'll be getting to it eventually camera 📷 paused Waiting for other things to happen. waiting for comment Awaiting a response

Comments

@kbingham
Copy link

The Camera Hardware schematics (https://www.raspberrypi.com/documentation/accessories/camera.html#schematics) shows the pinout of the 15 pin camera connector, but not the 22 pin version used.

Could https://github.com/raspberrypi/documentation/blob/develop/documentation/asciidoc/accessories/camera/camera_hardware.adoc be updated to also reference the 22 pin connector pin-out please? (While this pinout is easy to find online, I would rather reference Raspberry Pi documentation than an external vendor)

@aallan
Copy link
Contributor

aallan commented Oct 11, 2023

Ping @davidplowman and @naushir on this one.

@lurch
Copy link
Contributor

lurch commented Oct 11, 2023

@naushir
Copy link
Contributor

naushir commented Oct 11, 2023

Agree, the 22pin connector should be added here.

@aallan aallan changed the title CM4/PiZero/Pi5 camera connector at documentation/accessories/camera.html#schematics Add documentation of the 22-pin camera connector Oct 11, 2023
@aallan
Copy link
Contributor

aallan commented Oct 12, 2023

So I'm going to get the design team to work this diagram (and the existing 15-pin diagram) over so they look the same, and just a bit nicer as part of general "improve the quality of the diagrams and photographs in the documentation" push. But for reference here's the 22-pin connector.

image

@lurch
Copy link
Contributor

lurch commented Oct 12, 2023

I'm guessing that's one of the MIPI CSI/DSI transceivers on the Pi 5? Just for the sake of completeness, do we also want the pinout of the 22-pin camera connector on the Pi Zero / Zero W / Zero 2 W ?

@kbingham
Copy link
Author

https://datasheets.raspberrypi.com/cmcda/cmcda-schematics.pdf seems to show a different 22-pin pinout than the diagram above. Do we have different pinouts for connectors that are physically the same across the range of Pi products? (That surprises me)

I.e. - I expect to see IO1 (PowerEn) on pin17 on a 22 pin connector?

@aallan aallan self-assigned this Oct 12, 2023
@aallan aallan added waiting for comment Awaiting a response paused Waiting for other things to happen. labels Oct 12, 2023
@lurch
Copy link
Contributor

lurch commented Oct 12, 2023

It looks like the numbering-scheme in the CMCDA schematics is simply "reversed" when compared to the diagram above? E.g. the diagram above has 3.3V on pin 1 and GND on pin 22, whereas the CMCDA schematic has 3.3V on pin 22 and GND on pin 1. And when you take that into account, the pinouts do seem consistent?

@kbingham
Copy link
Author

kbingham commented Oct 12, 2023

Yes, indeed - it does look reversed. Does that mean that cables on Pi5 are in any way reversed? Having used cameras on the Pi5 already - I expect not - but maybe that's something to clarify in the documentation.

I can confirm however that adding a camera to a Pi5 with a reversed cable (Terrifyingly I have one, and hit this by accident) will cause the Pi5 to fail to boot up at all (not even to the bootloader) so it gets pretty obvious quite quickly if it's wrong. (Hence why I want to be /very/ sure about which is pin 1)

@lurch
Copy link
Contributor

lurch commented Oct 12, 2023

I think we'd only recommend using official Raspberry Pi cables, which obviously don't have this problem 😉

@kbingham
Copy link
Author

I think we'd only recommend using official Raspberry Pi cables, which obviously don't have this problem 😉

Tell that to the pile of mipi cables I have on my desk ;-) haha

@lurch
Copy link
Contributor

lurch commented Oct 13, 2023

@philipaxer
Copy link

Hi All,
I am running into a documenation issue on the 22pin CSI2 header. The voltage level of the I2C is implicitly documented as there are pullups towards 3.3V. However there is no indication what voltage levels the other IOs are (except the DPHY lanes). The Orin NX developer kit also uses a 22 pin CSI connector, propably "compatible" and they specifically specify 1.8V on GPIOs and 3.3V on I2C.

The cameras i could find only one pin as ENABLE and feed it into regulators where the ENABLE pin does not have JEDEC CMOS levels. But that doesnt help me much.

Orin NX Carrier Board Spec

@lurch
Copy link
Contributor

lurch commented May 14, 2025

Perhaps the CM5 and CM5IO datasheets might have the detailed info you're looking for?

@philipaxer
Copy link

The CM5IO has two CSI2: one is pull-up to 3.3V, the the other are GPIOs towards the high speed connector. Not sure what level comes out of that. The picture is incosistent to me.

CM5 says

These pins are actually GPIO pins on RP1, CAM_GPIO0 is GPIO34 and CAM_GPIO1 is
GPIO35

@lurch
Copy link
Contributor

lurch commented May 14, 2025

ping @dp111

@dp111
Copy link
Contributor

dp111 commented May 14, 2025

1.8v should be good for the GPIO pin as it is an enable for a regulator

@philipaxer
Copy link

In this case things are inconsistent, right? Sometimes it is 1.8V when driven from GPIOs. Othertimes is 3.3V if driven via pull-up.

It would be good to have some guidance in the documentation what to expect. I am building something that connects to this interface which is not 3.3V tolerant.

@dp111
Copy link
Contributor

dp111 commented May 14, 2025 via email

@philipaxer
Copy link

Could you point me to some document which specs that for my internal documentation? Thanks

@dp111
Copy link
Contributor

dp111 commented May 14, 2025

Nothing specific , but look at the CM5IO board and you will see for the MIPI port that doesn't have control of the GPIO pin it it pulled up to 3.3v to enable the regulator.

@philipaxer
Copy link

Would it be possible to add a hard statement to the pi docs that specifies this? Alternatively I can draft it based on your comment and create a pull request.

@lurch
Copy link
Contributor

lurch commented May 14, 2025

@philipaxer Just in case you're not aware: @dp111 is the chap who designed the CM5 and CM5IO boards 🙂 https://www.raspberrypi.com/news/meet-the-engineer-dominic-plunkett-on-compute-module-5/

@philipaxer
Copy link

Thanks for the hint. The reason I am so annoying here is that the eco system around this connector is growing and these two GPIOs are not well defined in terms of "easy
to approach documentation". I am not questioning that the Pi ecosystem fits together, but I see that others (NVIDIA for instance) also adopted this pinout. It seems they use it differently when it comes to the GPIOs.

We (Axonne Inc) are considering to use the Pi connector not only for Pi systems but also for other platforms that claim to be compatible. Thus, I want to make sure interoperability is by design and not by accident.

It would be great to have some ground truth, ideally in the Pi ecosystem. I hope that makes sense, and in am not coming across to pushy.

@philipaxer
Copy link

Hi @lurch, @dp111 I have put together a baseline and created a pull request. Kindly review and consider to merge it.
Thanks a lot!

philipaxer added a commit to philipaxer/raspi_documentation that referenced this issue May 15, 2025
@lurch lurch added the backlog We'll be getting to it eventually label May 15, 2025
philipaxer added a commit to philipaxer/raspi_documentation that referenced this issue May 15, 2025
philipaxer added a commit to philipaxer/raspi_documentation that referenced this issue May 15, 2025
philipaxer added a commit to philipaxer/raspi_documentation that referenced this issue May 15, 2025
philipaxer added a commit to philipaxer/raspi_documentation that referenced this issue May 15, 2025
philipaxer added a commit to philipaxer/raspi_documentation that referenced this issue May 16, 2025
philipaxer added a commit to philipaxer/raspi_documentation that referenced this issue May 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backlog We'll be getting to it eventually camera 📷 paused Waiting for other things to happen. waiting for comment Awaiting a response
Projects
None yet
Development

No branches or pull requests

7 participants