Compute Module 4
Specifications:
- Product Name: Raspberry Pi Compute Module 5
- Build Date: 22/07/2025
- Memory: 16GB RAM
- Analogue Audio: Muxed onto GPIO pins 12 and 13
Product Usage Instructions:
Compatibility:
Raspberry Pi Compute Module 5 is generally pin-compatible with
Raspberry Pi Compute Module 4.
Memory:
Raspberry Pi Compute Module 5 comes in a 16GB RAM variant,
whereas Compute Module 4 has a maximum memory capacity of 8GB.
Analogue Audio:
Analogue audio can be assigned to GPIO pins 12 and 13 on
Raspberry Pi Compute Module 5 using a specific device tree
overlay.
FAQ:
Q: Can I still use Raspberry Pi Compute Module 4 if I am unable
to transition to Compute Module 5?
A: Yes, Raspberry Pi Compute Module 4 will remain in production
until at least 2034 for customers who cannot transition to Compute
Module 5.
Q: Where can I find the datasheet for Raspberry Pi Compute
Module 5?
A: The datasheet for Raspberry Pi Compute Module 5 can be found
at https://datasheets.raspberrypi.com/cm5/cm5-datasheet.pdf.
Raspberry Pi | Transitioning from Compute Module 4 to Compute Module 5
Transitioning from Compute Module 4 to Compute Module 5
White Paper
Raspberry Pi Ltd
Transitioning from Compute Module 4 to Compute Module 5
Colophon
© 2022-2025 Raspberry Pi Ltd This documentation is licensed under a Creative Commons Attribution-NoDerivatives 4.0 International (CC BY-ND).
Release
1
Build date
22/07/2025
Build version 0afd6ea17b8b
Legal disclaimer notice
TECHNICAL AND RELIABILITY DATA FOR RASPBERRY PI PRODUCTS (INCLUDING DATASHEETS) AS MODIFIED FROM TIME TO TIME (“RESOURCES”) ARE PROVIDED BY RASPBERRY PI LTD (“RPL”) “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW IN NO EVENT SHALL RPL BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THE RESOURCES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
RPL reserves the right to make any enhancements, improvements, corrections or any other modifications to the RESOURCES or any products described in them at any time and without further notice.
The RESOURCES are intended for skilled users with suitable levels of design knowledge. Users are solely responsible for their selection and use of the RESOURCES and any application of the products described in them. User agrees to indemnify and hold RPL harmless against all liabilities, costs, damages or other losses arising out of their use of the RESOURCES.
RPL grants users permission to use the RESOURCES solely in conjunction with the Raspberry Pi products. All other use of the RESOURCES is prohibited. No licence is granted to any other RPL or other third party intellectual property right.
HIGH RISK ACTIVITIES. Raspberry Pi products are not designed, manufactured or intended for use in hazardous environments requiring fail safe performance, such as in the operation of nuclear facilities, aircraft navigation or communication systems, air traffic control, weapons systems or safety-critical applications (including life support systems and other medical devices), in which the failure of the products could lead directly to death, personal injury or severe physical or environmental damage (“High Risk Activities”). RPL specifically disclaims any express or implied warranty of fitness for High Risk Activities and accepts no liability for use or inclusions of Raspberry Pi products in High Risk Activities.
Raspberry Pi products are provided subject to RPL’s Standard Terms. RPL’s provision of the RESOURCES does not expand or otherwise modify RPL’s Standard Terms including but not limited to the disclaimers and warranties expressed in them.
Colophon
2
Transitioning from Compute Module 4 to Compute Module 5
Document version history
Release Date
Description
1
Mar 2025 Initial release. This document is heavily based on the `Raspberry Pi Compute Module 5 forward
guidance’ whitepaper.
Scope of document
This document applies to the following Raspberry Pi products:
Pi 0 0 WH
Pi 1 AB
Pi 2 AB
Pi 3 Pi 4 Pi Pi 5 Pi CM1 CM3 CM4 CM5 Pico Pico2
400
500
B All All All All All All All All All All
Colophon
1
Transitioning from Compute Module 4 to Compute Module 5
Introduction
Raspberry Pi Compute Module 5 continues the Raspberry Pi tradition of taking the latest flagship Raspberry Pi computer and producing a small, hardware-equivalent product suitable for embedded applications. Raspberry Pi Compute Module 5 has the same compact form factor as Raspberry Pi Compute Module 4 but provides higher performance and an improved feature set. There are, of course, some differences between Raspberry Pi Compute Module 4 and Raspberry Pi Compute Module 5, and these are described in this document.
NOTE For the few customers who are unable to use Raspberry Pi Compute Module 5, Raspberry Pi Compute Module 4 will stay in production until at least 2034. The Raspberry Pi Compute Module 5 datasheet should be read in conjunction with this whitepaper. https://datasheets.raspberrypi. com/cm5/cm5-datasheet.pdf.
Introduction
2
Transitioning from Compute Module 4 to Compute Module 5
Main features
Raspberry Pi Compute Module 5 has the following features: · Quad-core 64-bit Arm Cortex-A76 (Armv8) SoC clocked @ 2.4GHz · 2GB, 4GB, 8GB, or 16GB LPDDR4× SDRAM · On-board eMMC flash memory; 0GB (Lite model), 16GB, 32GB, or 64GB options · 2× USB 3.0 ports · 1 Gb Ethernet interface · 2× 4-lane MIPI ports supporting both DSI and CSI-2 · 2× HDMI® ports able to support 4Kp60 simultaneously · 28× GPIO pins · On-board test points to simplify production programming · Internal EEPROM on the bottom to improve security · On-board RTC (external battery via 100-pin connectors) · On-board fan controller · On-board Wi-Fi®/Bluetooth (depending on SKU) · 1-lane PCIe 2.0 ¹ · Type-C PD PSU support
NOTE Not all SDRAM/eMMC configurations are available. Please check with our sales team.
¹ In some applications PCIe Gen 3.0 is possible, but this is not officially supported.
Raspberry Pi Compute Module 4 compatibility
For most customers, Raspberry Pi Compute Module 5 will be pin-compatible with Raspberry Pi Compute Module 4. The following features have been removed/altered between the Raspberry Pi Compute Module 5 and Raspberry Pi Compute Module 4 models:
· Composite video – The composite output available on Raspberry Pi 5 is NOT routed out on Raspberry Pi Compute Module 5
· 2-lane DSI port – There are two 4-lane DSI ports available on Raspberry Pi Compute Module 5, muxed with the CSI ports for a total of two
· 2-lane CSI port – There are two 4-lane CSI ports available on Raspberry Pi Compute Module 5, muxed with the DSI ports for a total of two
· 2× ADC inputs
Memory
Raspberry Pi Compute Module 4s maximum memory capacity is 8GB, whereas Raspberry Pi Compute Module 5 is available in a 16GB RAM variant. Unlike Raspberry Pi Compute Module 4, Raspberry Pi Compute Module 5 is NOT available in a 1GB RAM variant.
Analogue audio
Analogue audio can be muxed onto GPIO pins 12 and 13 on Raspberry Pi Compute Module 5, in the same way as on Raspberry Pi Compute Module 4. Use the following device tree overlay to assign analogue audio to these pins:
Main features
3
Transitioning from Compute Module 4 to Compute Module 5
dtoverlay=audremap # or dtoverlay=audremap,pins_12_13
Due to an errata on the RP1 chip, GPIO pins 18 and 19, which could be used for analogue audio on Raspberry Pi Compute Module 4, are not connected to the analogue audio hardware on Raspberry Pi Compute Module 5 and cannot be used.
NOTE The output is a bitstream rather than a genuine analogue signal. Smoothing capacitors and an amplifier will be needed on the IO board to drive a line-level output.
Changes to USB boot
USB booting from a flash drive is only supported via the USB 3.0 ports on pins 134/136 and 163/165. Raspberry Pi Compute Module 5 does NOT support USB host boot on the USB-C port. Unlike the BCM2711 processor, the BCM2712 does not have an xHCI controller on the USB-C interface, just a DWC2 controller on pins 103/105. Booting using RPI_BOOT is done via these pins.
Change to module reset and power-down mode
I/O pin 92 is now set to PWR_Button rather than RUN_PG — this means you need to use a PMIC_EN to reset the module. The PMIC_ENABLE signal resets the PMIC, and therefore the SoC. You can view PMIC_EN when it’s driven low and released, which is functionally similar to driving RUN_PG low on Raspberry Pi Compute Module 4 and releasing it. Raspberry Pi Compute Module 4 has the added benefit of being able to reset peripherals via the nEXTRST signal. Raspberry Pi Compute Module 5 will emulate this functionality on CAM_GPIO1. GLOBAL_EN / PMIC_EN are wired directly to the PMIC and bypass the OS completely. On Raspberry Pi Compute Module 5, use GLOBAL_EN / PMIC_EN to execute a hard (but unsafe) shutdown. If there is a need, when using an existing IO board, to retain the functionality of toggling I/O pin 92 to start a hard reset, you should intercept the PWR_Button at the software level; rather than having it invoke a system shutdown, it can be used to generate a software interrupt and, from there, to trigger a system reset directly (e.g. write to PM_RSTC ). Device tree entry handling a power button (arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5.dtsi):
pwr_key: pwr { };
label = “pwr_button”; // linux,code = <205>; // KEY_SUSPEND linux,code = <116>; // KEY_POWER gpios = <&gio 20 GPIO_ACTIVE_LOW>; debounce-interval = <50>; // ms
Code 116 is the standard event code for the kernel’s KEY_POWER event, and there is a handler for this in the OS.
Raspberry Pi recommends using kernel watchdogs if you are concerned about the firmware or the OS crashing and leaving the power key unresponsive. ARM watchdog support is already present in Raspberry Pi OS via the device tree, and this can be customised to individual use cases. In addition, a long press/pull on the PWR_Button (7 seconds) will cause the PMIC’s built-in handler to shut down the device.
Detailed pinout changes
CAM1 and DSI1 signals have become dual-purpose and can be used for either a CSI camera or a DSI display. The pins previously used for CAM0 and DSI0 on Raspberry Pi Compute Module 4 now support a USB 3.0 port on Raspberry Pi Compute Module 5. The original Raspberry Pi Compute Module 4 VDAC_COMP pin is now a VBUS-enabled pin for the two USB 3.0 ports, and is active high.
Main features
4
Transitioning from Compute Module 4 to Compute Module 5
Raspberry Pi Compute Module 4 has extra ESD protection on the HDMI, SDA, SCL, HPD, and CEC signals. This is removed from Raspberry Pi Compute Module 5 due to space limitations. If required, ESD protection can be applied to the baseboard, although Raspberry Pi Ltd does not regard it as essential.
Pin CM4
CM5
Comment
16 SYNC_IN
Fan_tacho
Fan tacho input
19 Ethernet nLED1 Fan_pwn
Fan PWM output
76 Reserved
VBAT
RTC battery. Note: There will be a constant load of a few uA, even if CM5 is powered.
92 RUN_PG
PWR_Button
Replicates the power button on Raspberry Pi 5. A short press signals that the device should wake up or shut down. A long press forces shutdown.
93 nRPIBOOT
nRPIBOOT
If the PWR_Button is low, this pin will also be set low for a short time after power-up.
94 AnalogIP1
CC1
This pin can connect to the CC1 line of a Type-C USB connector to enable the PMIC to negotiate 5A.
96 AnalogIP0
CC2
This pin can connect to the CC2 line of a Type-C USB connector to enable the PMIC to negotiate 5A.
99 Global_EN
PMIC_ENABLE
No external change.
100 nEXTRST
CAM_GPIO1
Pulled up on Raspberry Pi Compute Module 5, but can be forced low to emulate a reset signal.
104 Reserved
PCIE_DET_nWAKE PCIE nWAKE. Pull up to CM5_3v3 with an 8.2K resistor.
106 Reserved
PCIE_PWR_EN
Signals whether the PCIe device can be powered up or down. Active high.
111 VDAC_COMP VBUS_EN
Output to signal that USB VBUS should be enabled.
128 CAM0_D0_N
USB3-0-RX_N
May be P/N swapped.
130 CAM0_D0_P
USB3-0-RX_P
May be P/N swapped.
134 CAM0_D1_N
USB3-0-DP
USB 2.0 signal.
136 CAM0_D1_P
USB3-0-DM
USB 2.0 signal.
140 CAM0_C_N
USB3-0-TX_N
May be P/N swapped.
142 CAM0_C_P
USB3-0-TX_P
May be P/N swapped.
157 DSI0_D0_N
USB3-1-RX_N
May be P/N swapped.
159 DSI0_D0_P
USB3-1-RX_P
May be P/N swapped.
163 DSI0_D1_N
USB3-1-DP
USB 2.0 signal.
165 DSI0_D1_P
USB3-1-DM
USB 2.0 signal.
169 DSI0_C_N
USB3-1-TX_N
May be P/N swapped.
171 DSI0_C_P
USB3-1-TX_P
May be P/N swapped.
In addition to the above, the PCIe CLK signals are no longer capacitively coupled.
PCB
Raspberry Pi Compute Module 5s PCB is thicker than Raspberry Pi Compute Module 4s, measuring at 1.24mm+/-10%.
Track lengths
HDMI0 track lengths have changed. Each P/N pair remains matched, but the skew between pairs is now <1mm for existing motherboards. This is unlikely to make a difference, as the skew between pairs can be in the order of 25 mm. HDMI1 track lengths have also changed. Each P/N pair remains matched, but the skew between pairs is now <5mm for existing motherboards. This is unlikely to make a difference, as the skew between pairs can be in the order of 25 mm.
Main features
5
Transitioning from Compute Module 4 to Compute Module 5
Ethernet track lengths have changed. Each P/N pair remains matched, but the skew between pairs is now <4mm for existing motherboards. This is unlikely to make a difference, as the skew between pairs can be in the order of 12 mm.
Connectors
The two 100-pin connectors have been changed to a different brand. These are compatible with the existing connectors but have been tested at high currents. The mating part that goes onto the motherboard is Amphenol P/N 10164227-1001A1RLF.
Power budget
As Raspberry Pi Compute Module 5 is significantly more powerful than Raspberry Pi Compute Module 4, it will consume more electrical power. Power supply designs should budget for 5V up to 2.5A. If this creates an issue with an existing motherboard design, it is possible to reduce the CPU clock rate to lower the peak power consumption. The firmware monitors the current limit for USB, which effectively means that usb_max_current_enable is always 1 on CM5; the IO board design should take the total USB current required into consideration. The firmware will report the detected power supply capabilities (if possible) via `device-tree’. On a running system, see /proc/ device-tree/chosen/power/* . These files are stored as 32-bit big-endian binary data.
Main features
6
Transitioning from Compute Module 4 to Compute Module 5
Software changes/requirements
From a software point of view, the changes in hardware between Raspberry Pi Compute Module 4 and Raspberry Pi Compute Module 5 are hidden from the user by new device tree files, which means the majority of the software that adheres to the standard Linux APIs will work without change. The device tree files ensure that the correct drivers for the hardware are loaded at boot time.
Device tree files can be found in the Raspberry Pi Linux kernel tree. For example: https://github.com/raspberrypi/linux/blob/rpi-6. 12.y/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5.dtsi.
Users moving to Raspberry Pi Compute Module 5 are advised to use the software versions indicated in the table below, or newer. While there is no requirement to use Raspberry Pi OS, it is a useful reference, hence its inclusion in the table.
Software
Version
Date
Notes
Raspberry Pi OS Bookworm (12)
Firmware
From 10 Mar 2025
See https://pip.raspberrypi.com/categories/685-app-notes-guideswhitepapers/documents/RP-003476-WP/Updating-Pi-firmware.pdf for details on upgrading firmware on an existing image. Note that Raspberry Pi Compute Module 5 devices come pre-programmed with appropriate firmware
Kernel
6.12.x
From 2025
This is the kernel used in Raspberry Pi OS
Moving to standard Linux APIs/libraries from proprietary drivers/ firmware
All the changes listed below were part of the transition from Raspberry Pi OS Bullseye to Raspberry Pi OS Bookworm in October 2023. While Raspberry Pi Compute Module 4 was able to use the older deprecated APIs (as the required legacy firmware was still present), this is not the case on Raspberry Pi Compute Module 5.
Raspberry Pi Compute Module 5, like Raspberry Pi 5, now relies on the DRM (Direct Rendering Manager) display stack, rather than the legacy stack often referred to as DispmanX. There is NO firmware support on Raspberry Pi Compute Module 5 for DispmanX, so moving to DRM is essential.
A similar requirement applies to cameras; Raspberry Pi Compute Module 5 only supports the libcamera library’s API, so older applications that use the legacy firmware MMAL APIs, such as raspi-still and raspi-vid , no longer function.
Applications using the OpenMAX API (cameras, codecs) will no longer work on Raspberry Pi Compute Module 5, so will need to be rewritten to use V4L2. Examples of this can be found in the libcamera-apps GitHub repository, where it is used to access the H264 encoder hardware.
OMXPlayer is no longer supported, as it also uses the MMAL API — for video playback, you should use the VLC application. There is no command-line compatibility between these applications: see the VLC documentation for details on usage.
Raspberry Pi previously published a whitepaper that discusses these changes in more detail: https://pip.raspberrypi.com/ categories/685-app-notes-guides-whitepapers/documents/RP-006519-WP/Transitioning-from-Bullseye-to-Bookworm.pdf.
Software changes/requirements
7
Transitioning from Compute Module 4 to Compute Module 5
Additional information
While not strictly related to the transition from Raspberry Pi Compute Module 4 to Raspberry Pi Compute Module 5, Raspberry Pi Ltd has released a new version of the Raspberry Pi Compute Module provisioning software and also has two distro generation tools that users of Raspberry Pi Compute Module 5 may find useful. rpi-sb-provisioner is a minimal-input, automatic secure boot provisioning system for Raspberry Pi devices. It is entirely free to download and use, and can be found on our GitHub page here: https://github.com/raspberrypi/rpi-sb-provisioner. pi-gen is the tool used to create the official Raspberry Pi OS images, but it is also available for third parties to use to create their own distributions. This is the recommended approach for Raspberry Pi Compute Module applications that require customers to build a custom Raspberry Pi OS-based operating system for their specific use case. This is also free to download and use, and can be found here: https://github.com/RPi-Distro/pi-gen. The pi-gen tool integrates well with rpi-sb-provisioner to provide an end-to-end process for generating secure boot OS images and implementing them on Raspberry Pi Compute Module 5. rpi-image-gen is a new image creation tool (https://github.com/raspberrypi/rpi-image-gen) that may be more appropriate for more lightweight customer distributions. For bring-up and testing — and where there is no requirement for the full provisioning system — rpiboot is still available on Raspberry Pi Compute Module 5. Raspberry Pi Ltd recommends using a host Raspberry Pi SBC running the latest version of Raspberry Pi OS and the latest rpiboot from https://github.com/raspberrypi/usbboot. You must use the `Mass Storage Gadget’ option when running rpiboot , as the previous firmware-based option is no longer supported.
Contact Details for more information
Please contact applications@raspberrypi.com if you have any queries about this whitepaper. Web: www.raspberrypi.com
Additional information
8
Raspberry Pi
Raspberry Pi is a trademark of Raspberry Pi Ltd Raspberry Pi Ltd
Documents / Resources
![]() |
Raspberry Pi Compute Module 4 [pdf] User Guide Compute Module 4, Module 4 |