We will be continuing maintenance on the wiki starting this Saturday at 9 am (UTC) to Sunday at 7PM (UTC).

There is a possibility of long maintenance-breaks and downtime during this time.

For more information contact us in the wiki Discord or by email at: unto@fighttorepair.org

Raspberry Pi Compute Module 4 (CM4)

From Repair Wiki
Jump to navigation Jump to search
This article is a stub. You can help Repair Wiki grow by expanding it.

The Compute Module 4, aka CM4[1] 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[2] 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[edit | edit source]

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[3] (4H110) 3.3V, package USON-8- like W25X40CLUXIG TR or GD25Q40CEJGR
  • RAM-Memory IC LPDDR4 x32 - here D9ZCL[4] 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:

  • most likely DA9121[5] (I2C step-down IC 5V --> VDD_Core@TP15). Thanks to whyfp for determine that IC.
  • unknown QFN16 IC

various[edit | edit source]

  • The CM4 has some relationship with the Rev1.4[6] 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 [7] 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[8] on BCM2711[9]) - so on CM4 the BROM uses SPI0_MISO[10] as GPIO40 at boot

LED Flash Codes[edit | edit source]

These informations are copied from https://support.pishop.ca/article/33-raspberry-pi-act-led-error-patterns[11]

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.

Long flashes Short flashes Status
0 3 Generic failure to boot
0 4 start*.elf not found
0 7 Kernel image not found
0 8 SDRAM failure
0 9 Insufficient SDRAM
0 10 In HALT state
2 1 Partition not FAT
2 2 Failed to read from partition
2 3 Extended partition not FAT
2 4 File signature/hash mismatch - Pi 4
4 4 Unsupported board type
4 5 Fatal firmware error
4 6 Power failure type A
4 7 Power failure type B
  • 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.

unsorted Images[edit | edit source]

The CPU buck-converter IC in more detail:

New (2022) revision (1.)5[13] using new PMIC dialog DA9090 (which seems to be similar DA9080[14]):

References[edit | edit source]