Making and Populating a Raspberry Pi CM4IO PCB
RP CM4 |
The RP CM4 (https://datasheets.raspberrypi.com/cm4/cm4-datasheet.pdf) is a small processing unit capable of running Linux. It's cheap-ish and powerful-ish and useful for all sorts of things. It has many interfaces and RP designed a PCB to showcase these, it's called the CM4IO
(https://datasheets.raspberrypi.com/cm4io/cm4io-datasheet.pdf).
How easy is it to make your own PCB with a CM4 on it?
The first challenge is to check that your PCB manufacturer can make a PCB with the correct impedances for some of the signal tracks, in my case, HDMI was what I was interested in. So, JLCPCB was used to make a standard CM4IO PCB, using 1.6mm thickness (the artwork seemed to be designed for this thickness of PCB).
The second challenge is the 'comedy' footprint that the CM4 has. It uses some high density connectors that have to be aligned perfectly (datasheet gives a tolerance of +/- 0mm for the distance between them) on the PCB. I managed to solder a pair of connectors by tinning the footprint pads and aligning a connector on top of that footprint, pinning it in place by reheating (with flux) the diagonally opposite pads) and then re-heating the pads to fix the connector to the PCB.
As an aside, drag soldering worked for one connector, but the other is attached to ground planes and that conducts the heat away too quickly for my tip/iron combinations.
With an HDMI connector and some other components, this is the result: