Raspberry Pi Compute Module 4

by Raspberry Pi Foundation

Image of Board

Compute Module 4

The power of Raspberry Pi 4 in a compact form factor for deeply embedded applications. Raspberry Pi Compute Module 4 incorporates a quad-core ARM Cortex-A72 processor, dual video output, and a wide selection of other interfaces. Available in 32 variants, with a range of RAM and eMMC Flash options, and with or without wireless connectivity.

  • Broadcom BCM2711 quad-core Cortex-A72 (ARM v8) 64-bit SoC @ 1.5GHz
  • H.265 (HEVC) (up to 4Kp60 decode), H.264 (up to 1080p60 decode, 1080p30 encode)
  • OpenGL ES 3.0 graphics
  • Options for 1GB, 2GB, 4GB or 8GB LPDDR4-3200 SDRAM (depending on variant)
  • Options for 0GB (“Lite”), 8GB, 16GB or 32GB eMMC Flash memory (depending on variant)
  • Option for fully certified radio module:
  • 2.4 GHz, 5.0 GHz IEEE 802.11 b/g/n/ac wireless;
  • Bluetooth 5.0, BLE;
  • On-board electronic switch to select either external or PCB trace antenna

Compute Module 4 IO Board

Exposing every interface from Raspberry Pi Compute Module 4, the Compute Module 4 IO Board provides a development platform and reference base-board design for our most powerful Compute Module yet.

  • External power connector (+12V, +5V)
  • 2 x full-size HDMI 2.0 connectors
  • 2 x USB 2.0 connectors, with header for two additional connectors
  • Gigabit Ethernet RJ45 with PoE support
  • Micro USB socket for updating Compute Module 4
  • MicroSD card socket for Compute Module 4 Lite (without eMMC) variants
  • PCIe Gen 2 x1 socket
  • Standard fan connector
  • 2 x MIPI DSI display FPC connectors (22-pin 0.5 mm pitch cable)
  • 2 x MIPI CSI-2 camera FPC connectors (22-pin 0.5 mm pitch cable)
  • Standard Raspberry Pi HAT connectors
  • Real-time clock with battery socket and ability to wake Compute Module 4
  • Various jumpers to disable specific features, e.g. wireless connectivity, EEPROM writing

Purchase

Contribute

Have some info to add for this board? Edit the source for this page here.

Adafruit Blinka Installation

We use a special library called adafruit_blinka (named after Blinka, the CircuitPython mascot) to provide the layer that translates the CircuitPython hardware API to whatever library the Linux board provides.

For example, on Raspberry Pi we use the python RPi.GPIO library. For any I2C interfacing we'll use ioctl messages to the /dev/i2c device. For SPI we'll use the spidev python library, etc. These details don't matter so much because they all happen underneath the adafruit_blinka layer.