Raspberry Pi Compute Module 4 (CM4)

The Compute Module 4, aka CM4 is the newst single board computer module from Raspberry Pi Foundation. It comes in 32 variants:


 * RAM: 1GB, 2GB , 4GB or 8GB
 * eMMC Flash: none, 8GB , 16GB or 32GB
 * WIFI/Bluetooth: none, with WIFI/Bluetooth

Please note, lite-versions (the ones without eMMC Flash) have different PCB layout design. Only lite-models can use the microSD Card Slot.

Since there are no schematics or other documentation, only sources of information are reverse engineering and experiments with it.

This page will collect all these. As a start however it will be a fair bit unsorted. My first priority is to write them down, before I forget details from my CM4 experiments last weekend.

Until now three CM4 were sacrificed in the name of knowledge. Additional information can be collected from other sources of the internet. In this early stage: If you have questions, please contact me: tinyusbboard@matrixstorm.com.

main active components
On the front side the CM4 has most of its active components:
 * WIFI module with antenna switcher (sth. like SKY13366-378LF) - not populated in current picture
 * BGA153 eMMC flash storage IC - here KLMBG2JETD - 32GB
 * Ethernet Phy BCM54210PE
 * Boot "EPROM" 512k SPI-Flash (4H110) 3.3V, package USON-8- like W25X40CLUXIG TR or GD25Q40CEJGR
 * RAM-Memory IC LPDDR4 x32 - here D9ZCL 8GiB (2Gx32)
 * main SOC BCM2711 - all CM4 have the XXXC0T model
 * main PMIC MxL7704-P4 (see MxL7704 page on repair wiki)

On the back side the CM4 has only two active components:
 * unknown I2C based step-down IC (DSBGA24) type using the 1.8V from MxL7704 LX2 (TP13) to generate VDD_Core
 * unknown QFN16 IC

various

 * The CM4 has some relationship with the Rev1.4 of the Raspberry Pi 4. There also the VDD_Core is no longer supplied by LX4 (TP15) of MxL7704, but by the mysterious BGA24 IC. However WIFI module and ethernet PHY are different.
 * All BGA components (eMMC, BCM2711 SOC, LPDDR4 DRAM) from the front can be reballed using one single 0.3mm ball type
 * WARNING: The BCM2711 is very sensitive to heat! Using more than 333°C will cause internal shorts on 1.8V rail, rendering the SOC defective.
 * Note: MXL7704 replacement
 * Both step down parts on the mysterious BGA24 need to be active - the CM4/BCM2711 checks which one is missing by different LED flash codes
 * The CM4 (boot-)loader performs memory autodetect, so eMMC and RAM can be replaced by models of different sizes
 * The CM4 revision codes are autogenerated based on RAM autodetected size (They are not burned to the SOC)
 * The "nRPIBOOT" Signal just pulls down SPI0-MISO (the eeproms out which connects to GPIO40 on BCM2711 ) - so on CM4 the BROM uses SPI0_MISO as GPIO40 at boot

LED Flash Codes
These informations are copied from https://support.pishop.ca/article/33-raspberry-pi-act-led-error-patterns

You also can use raspberry pi documentation directly: https://www.raspberrypi.com/documentation/computers/configuration.html#led-warning-flash-codes

LED warning flash codes If a Pi fails to boot for some reason or has to shut down, in many cases an LED will be flashed a specific number of times to indicate what happened. The LED will blink for a number of long flashes (0 or more), then short flashes, to indicate the exact status. In most cases, the pattern will repeat after a 2-second gap.


 * If the ACT LED blinks in a regular four blink pattern, it cannot find bootcode (start.elf).
 * If the ACT LED blinks in an irregular pattern, then booting has started.
 * If the ACT LED doesn't blink, then the EEPROM code might be corrupted. Try again without anything connected to make sure.