Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket....

14

Transcript of Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket....

Page 1: Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket. The CM4IO board can be used as a reference design for examples of how to interface
Page 2: Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket. The CM4IO board can be used as a reference design for examples of how to interface

Colophon© 2020 Raspberry Pi (Trading) Ltd.

The documentation around the Raspberry Pi Compute Module 4 is licensed under a Creative Commons Attribution-

NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA).

build-date: 2020-10-05

build-version: githash: ac53e16-clean

Raspberry Pi Compute Module 4 IO Board

Colophon 1

Page 3: Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket. The CM4IO board can be used as a reference design for examples of how to interface

Table of ContentsColophon. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  1

1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  3

2. Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  4

2.1. CM4 Module Connectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  4

2.2. PSU input. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  4

2.3. Dual Full size HDMI 2.0 connectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  4

2.4. Gigabit Ethernet RJ45. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  5

2.5. USB 2.0 Hub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  5

2.6. Micro SDCARD socket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  5

2.7. PCIe Gen 2 x1 socket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  5

2.8. Fan connector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  5

2.9. Dual DSI display connectors ( 22pin 0.5mm pitch cable) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  5

2.10. Dual CSI-2 display connectors ( 22pin 0.5mm pitch cable). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  6

2.11. A Raspberry Pi HAT connector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  6

2.12. RTC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  6

2.13. Jumpers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  6

2.14. LEDs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  7

3. Mechanical Diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  8

4. Circuit Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  9

Raspberry Pi Compute Module 4 IO Board

Table of Contents 2

Page 4: Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket. The CM4IO board can be used as a reference design for examples of how to interface

Chapter 1. IntroductionThe Raspberry Pi CM4IO board is designed for development of products using the Raspberry Pi Compute Module 4. In

some situations the CM4IO board can be used directly in products. The CM4IO board contains many of the interfaces that

the Raspberry Pi 4B has, for general usage you should refer to Raspberry Pi 4B documentation. The significant difference

to a Raspberry Pi 4B is the addition of the a PCIe x1 socket. The CM4IO board can be used as a reference design for

examples of how to interface to the Raspberry Pi Compute Module 4.

Figure 1. Render of the

CM4IO board.

Raspberry Pi Compute Module 4 IO Board

Chapter 1. Introduction 3

Page 5: Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket. The CM4IO board can be used as a reference design for examples of how to interface

Chapter 2. Features• Accepts the complete range of CM4 modules

• External +12v PSU

• 2x Full-size HDMI 2.0 connectors

• Gigabit Ethernet RJ45 with POE support

• 2x USB 2 Socket, with header for two more sockets

• Micro USB socket for updating the CM4

• Micro SDCARD socket for CM4Lite modules.

• PCIe Gen 2 x1 socket

• Standard Fan connector

• External power connector ( +5, +12v)

• 2x MIPI DSI display FPC connectors ( 22pin 0.5mm pitch cable)

• 2x MIPI CSI-2 camera FPC connectors ( 22pin 0.5mm pitch cable)

• Raspberry Pi HAT connector

• RTC with Battery socket and ability to wake up CM4

• Various jumpers to disable features e.g Wireless, EEPROM writing

2.1. CM4 Module Connectors

The two CM4 module connectors are positioned so the onboard wireless antenna is at the edge of the board for best

wireless performance.

2.2. PSU input

The main PSU input (J19) is a 2.1mm DC tip positive +12v input. On board there is a +12v to +5v DC-DC converter to

power the CM4. There is also an onboard +12v to +3.3v DC-DC converter PSU which is only used for the PCIe slot. The

+12v input feeds the +12v PCIe slot, the external PSU connect and the FAN connector directly. If these aren’t being used

then a wider input supply is possible ( +7.5v to +26v).

With a +12v supply via the DC barrel jack the external PSU connector ( J20, +5, +12v ) is ideal to connect to PCIe cards

that require external PSU. You should ensure that the PSUs aren’t over loaded. J20 Matting connector is known as "Berg"

Part number AMP / TE Connectivity 171822-4 or similar.

The exact current required from the +12v PSU is dependent on the application and what is connected to the CM4IO board.

It is recommended to budget 8Watts for the CM4.

2.3. Dual Full size HDMI 2.0 connectors

The CM4 does most of the interfacing required for the HDMI interface so that most signals are directly connected to the

CM4. HDMI connectors require a +5v supply, this is provided on the CM4IO board via a current limited switch.

Raspberry Pi Compute Module 4 IO Board

2.1. CM4 Module Connectors 4

Page 6: Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket. The CM4IO board can be used as a reference design for examples of how to interface

2.4. Gigabit Ethernet RJ45

The CM4IO board uses a standard 1:1 Ethernet magjack, which supports POE as well. Additional ESD protection is

provided on the CM4IO board as it is typically needed in POE applications.

2.5. USB 2.0 Hub

The CM4IO board has an onboard USB 2.0 hub. This connects to the CM4 USB 2.0 port. Two ports from the hub are

connected to a connector. The two other ports are connected to a header, this header can be used to provide two extra

internal ports.

There is an internal current limit switch to provide VBUS to the USB connectors. The current limit is set to approximately

1.2A. Micro USB connector.

The micro USB connector is designed to enable the CM4 to be updated via rpiboot. When a USB cable is plugged in the

USB hub is automatically disabled, so the CM4 USB 2.0 port on the CM4 becomes a USB device.

2.6. Micro SDCARD socket

WARNING

For use only with CM4Lite modules

The SDCARD socket is a PUSH-PUSH socket. To release the SDCARD a gentle push on the SDCARD will enable it to be

removed.

2.7. PCIe Gen 2 x1 socket

The PCIe socket is designed to take standard PC PCIe cards. You should ensure that there is a suitable OS driver for your

card.

The PCIe link on the Raspberry Pi 4B is used for the USB 3.0 interface via the VLI805 XHCI controller. If the application

requires USB 3.0 interface then an external XHCI controller is required like the VLI805.

The PCIe link has been successfully used with an NVMe drive via a passive PCIe adaptor. Currently the CM4 bootloader

doesn’t support NVMe drives so you must boot via a different source.

If the application uses a standard PCIe card then it might be useful to have a small PCIe adapter to rotate the PCIe card

90degress to enable a more compact case.

Note the PCIe Interface doesn’t support MSI-X. Typically PCIe devices will fall back to MSI.

2.8. Fan connector

This connector supports standard +12v FANs with PWM drive and tacho output. An EMC2301 controls the fan via I2C.

Mating connector part number Molex 47054-1000 or similar. The +12v power for the fan comes from the +12v input and

isn’t regulated.

2.9. Dual DSI display connectors ( 22pin 0.5mm pitch cable)

Both DSI interfaces ( 2 channel and 4 channel) are brought out to separate 22way 0.5mm pitch connectors. These

connectors are the same as on the existing CMIO board, NB they are different from the Raspberry Pi 4B. If the DSI0

interface ( 2 channel ) is used then the 2 jumpers on J6 must be fitted to route the I2C bus to the connector

Raspberry Pi Compute Module 4 IO Board

2.4. Gigabit Ethernet RJ45 5

Page 7: Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket. The CM4IO board can be used as a reference design for examples of how to interface

2.10. Dual CSI-2 display connectors ( 22pin 0.5mm pitch cable)

Both CSI-2 interfaces ( 2 channel and 4 channel) are brought out to separate 22way 0.5mm pitch connectors. These

connectors are the same as on the existing CMIO board, NB they are different from the Raspberry Pi 4B. If the CSI0

interface ( 2 channel ) is used then the 2 jumpers on J6 must be fitted to route the I2C bus to the connector

2.11. A Raspberry Pi HAT connector

The CM4IO board has a standard Raspberry Pi 40 way HAT connector. The mounting holes are also provided so that

standard HATs may be used.

2.12. RTC

A PCF85063AT RTC is provided on the CM4IO board. A battery socket is provided for a CR2032 battery. On initial setup

the CLKOUT of the RTC should be disabled to save power.

The alarm output of the RTC is used to wakeup the CM4 from a previous shutdown. If an alarm goes off during normal

operation the CM4 will be reset, this can be used as a watchdog timer if required.

2.13. Jumpers

R4/R5 Vref Voltage Selection

By default the CM4IO board sets the CM4 IO voltage to +3.3v via R5. Moving R5 to R4 sets the IO voltage on the CM4 to

+1.8v . Moving the resistor requires the use of the soldering iron. NB Only of R4 R5 must be fitted at any one time.

NOTE

J6 CSI0 DSI0 I2C enable

For the J6 jumpers, if either CSI0 or DSI0 it used then both jumpers must be fitted to route the I2C bus to the

connectors

Table 1. J2 jumpersPin Function

1-2 nRPIBOOT If fitted forces USB booting, it is useful if the eMMC becomes corrupted.

3-4 EEPROM_nWP If fitted write protects the EEPROM on the CM4

5 AIN1 MXL7704 analog input consult MXL7704 datasheet for details

6 AIN0 MXL7704 analog input consult MXL7704 datasheet for details

7 GND for AIN signals

8 SYNC_IN

9 SYNC_OUT

10 GND

11 TV_OUT

12 GND

13-14 Connect a push button to wake up the CM4 from low power mode. It can’t be used to shutdown the CM4.

Table 2. J3 ( not fitted

by default)Pin Function

1 WL_nDIS when connected to ground the wireless interface will be disabled

Raspberry Pi Compute Module 4 IO Board

2.10. Dual CSI-2 display connectors ( 22pin 0.5mm pitch cable) 6

Page 8: Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket. The CM4IO board can be used as a reference design for examples of how to interface

2 GND Ground

3 BT_nDIS when connected to ground the Bluetooth interface will be disabled

Table 3. J1( not fitted

by default)Pin Function

1 GLOBAL_EN

2 GND

3 RUN_PG

2.14. LEDs

Red LED

This LED duplicates the function of the RED LED on the Raspberry Pi 4B

Green LED

This LED duplicates the function of the GREEN LED on the Raspberry Pi 4B

Raspberry Pi Compute Module 4 IO Board

2.14. LEDs 7

Page 9: Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket. The CM4IO board can be used as a reference design for examples of how to interface

Chapter 3. Mechanical DiagramFigure 2. Mechanical

diagram of the CM4IO

board.

Raspberry Pi Compute Module 4 IO Board

Chapter 3. Mechanical Diagram 8

Page 10: Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket. The CM4IO board can be used as a reference design for examples of how to interface

Chapter 4. Circuit Diagram

1 2 3 4 5 6

1 2 3 4 5 6

A

B

C

D

A

B

C

D

Date:KiCad E.D.A. kicad (5.99.0-3207-g147540b3b)

Rev: 1Size: A4Id: 1/7

Title: Compute Module 4 IO Board - Top LevelFile: CM4IOv5.kicad_schSheet: /

(c) Raspberry Pi Trading 2020

www.raspberrypi.org

PSUs

File: PSUs.kicad_sch

+5v

+12v

PCIe-connector

File: PCIe-routing.kicad_sch

PCIE_CLK_P

PCIE_CLK_N

PCIE_TX_P

PCIE_TX_N

PCIE_CLK_nREQ

PCIE_nRST

PCIE_RX_P

PCIE_RX_N

+12v

+5v

CM4_GPIO ( Ethernet, GPIO, SDCARD)

File: CM4_GPIO.kicad_sch

ID_

SC

ID_

SD

CA

M_

GP

IO

SC

L0

SD

A0

+5v

+3.3vnEXTRST

GLOBAL_EN

GP

IO_

VR

EF

TV

_OU

T

CM4_HighSpeed

File: CM4_HighSpeed.kicad_sch

USB2_N

USB2_P

ID_

SC

ID_

SD

CA

M_

GP

IO

SC

L0

SD

A0

+5v

PCIE_CLK_P

PCIE_CLK_N

PCIE_TX_P

PCIE_TX_N

PCIE_nRST

PCIE_RX_P

PCIE_RX_N

PCIE_CLK_nREQ

+3.3v

USBOTG_ID

GP

IO_

VR

EF

TV

_OU

T

RTC , Wakeup, FAN

File: RTC.kicad_sch

SCL

SDA

+5v

+3.3vGLOBAL_EN

+12v

USB2-HUB

File: USB2-HUB.kicad_sch

USB2_N

USB2_P+5v

+3.3v

nEXTRST

USBOTG

H6MountingHole

H8MountingHole

H4MountingHole

H3MountingHole

H2MountingHole

H1MountingHole

H5MountingHole

H7MountingHole

+3.3v

+3.3v

nEXTRST

+3.3v

+5v

+5v

+3.3v

+12v

+5v

nEXTRST

+5v

+12v+5v

+5v

+12v

Connectors-------EthernetSDCARD40way RPIJumpers

Connectors-------FANBattery

Connectors-------Dual USBmicroUSB

Connectors-------HDMI 0HDMI 1CSI 0CSI 1DSI 0DSI 1

Connector------PCIe x1

Connectors-------DC Barrel Jack4 pin power

Figure 3. Top level

1 2 3 4 5 6

1 2 3 4 5 6

A

B

C

D

A

B

C

D

Date:KiCad E.D.A. kicad (5.99.0-3207-g147540b3b)

Rev: 1Size: A4Id: 4/7

Title: Compute Module 4 IO Board - CM4 - HighspeedFile: CM4_HighSpeed.kicad_schSheet: /CM4_HighSpeed/

(c) Raspberry Pi Trading 2020

www.raspberrypi.org

GNDHigh Speed Serial

USB_OTG_ID 101PCIe_CLK_nREQ102

USB2_N 103Reserved104

USB2_P 105Reserved106

GND 107GND108

PCIe_nRST 109PCIe_CLK_P110

VDAC_COMP 111PCIe_CLK_N112

GND 113GND114

CAM1_D0_N 115PCIe_RX_P116

CAM1_D0_P 117PCIe_RX_N118

GND 119GND120

CAM1_D1_N 121PCIe_TX_P122

CAM1_D1_P 123PCIe_TX_N124

GND 125GND126

CAM1_C_N 127CAM0_D0_N128

CAM1_C_P 129CAM0_D0_P130

GND 131GND132

CAM1_D2_N 133CAM0_D1_N134

CAM1_D2_P 135CAM0_D1_P136

GND 137GND138

CAM1_D3_N 139CAM0_C_N140

CAM1_D3_P 141CAM0_C_P142

HDMI1_HOTPLUG 143GND144

HDMI1_SDA 145HDMI1_TX2_P146

HDMI1_SCL 147HDMI1_TX2_N148

HDMI1_CEC 149GND150

HDMI0_CEC 151HDMI1_TX1_P152

HDMI0_HOTPLUG 153HDMI1_TX1_N154

GND 155GND156

DSI0_D0_N 157HDMI1_TX0_P158

DSI0_D0_P 159HDMI1_TX0_N160

GND 161GND162

DSI0_D1_N 163HDMI1_CLK_P164

DSI0_D1_P 165HDMI1_CLK_N166

GND 167GND168

DSI0_C_N 169HDMI0_TX2_P170

DSI0_C_P 171HDMI0_TX2_N172

GND 173GND174

DSI1_D0_N 175HDMI0_TX1_P176

DSI1_D0_P 177HDMI0_TX1_N178

GND 179GND180

DSI1_D1_N 181HDMI0_TX0_P182

DSI1_D1_P 183HDMI0_TX0_N184

GND 185GND186

DSI1_C_N 187HDMI0_CLK_P188

DSI1_C_P 189HDMI0_CLK_N190

GND 191GND192

DSI1_D2_N 193DSI1_D3_N194

DSI1_D2_P 195DSI1_D3_P196

GND 197GND198

HDMI0_SDA 199HDMI0_SCL200

Module1BComputeModule4

Hirose2off DF40C-100DS-0.4V

GND

R62.2K 1%

R72.2K 1%

1 2

3 4

J6THD-02-R

C13100n

IN1 OUT 2

GND3

U12RT9742SNGV

GND

SH

SH

2 SH

SH

3 SH

SH

4

D2+1

CK+10

CK

S11

CK-12

CEC13

UTILITY/HEAC+14

SCL15

SDA16

GN

D17

+5

V18

HPD/HEAC-19

D2S

2

D2-3

D1+4

D1S

5

D1-6

D0+7

D0S

8

D0-9

SH

SH

1

J22

690-019-298-412

GND

1

10

11

12

13

14

15

16

17

18

19

2

20

21

22

3

4

5

6

7

8

9

J5

Conn_01x22_Female

1

10

11

12

13

14

15

16

17

18

19

2

20

21

22

3

4

5

6

7

8

9

J4

Conn_01x22_Female

GND

SH

SH

2 SH

SH

3 SH

SH

4

D2+1

CK+10

CK

S11

CK-12

CEC13

UTILITY/HEAC+14

SCL15

SDA16

GN

D17

+5

V18

HPD/HEAC-19

D2S

2

D2-3

D1+4

D1S

5

D1-6

D0+7

D0S

8

D0-9

SH

SH

1

J10

690-019-298-412

1

10

11

12

13

14

15

16

17

18

19

2

20

21

22

3

4

5

6

7

8

9

J16

Conn_01x22_Female

1

10

11

12

13

14

15

16

17

18

19

2

20

21

22

3

4

5

6

7

8

9

J15

Conn_01x22_Female

GND

GND

GND

C12100n

GND GND GND

PCIE_TX_P

GPIO_VREF

PCIE_TX_N

SCL0

ID_SD

ID_SC

+5v

PCIE_CLK_nREQ

PCIE_CLK_P

PCIE_CLK_N

PCIE_RX_P

PCIE_RX_N

CAM_GPIO

SDA0

USBOTG_ID

+3.3v

USB2_N

USB2_P

TV_OUT

PCIE_nRST

HDMI1_SCL

CAM1_D0_P

CAM1_D1_N

CAM1_D1_P

CAM1_C_N

CAM1_D3_P

CAM1_D3_N

HDMI0_CEC

HDMI1_CEC

CAM0_D0_P

HDMI1_SDA

HDMI1_HOTPLUG

CAM1_D1_P

CAM1_D2_P

CAM1_D2_N

CAM1_C_P

CAM1_C_N

+3.3v

CAM_GPIO

CAM0_C_PCAM1_D0_P

CAM1_D1_N

SDA1

HDMI1_D2_P

HDMI1_D2_N

HDMI1_D1_P

SCL1

+3.3v

CAM1_D0_N

CAM1_C_P

HDMI_5v

CAM0_C_N

HDMI0_HOTPLUG

CAM0_D1_P

CAM0_D1_N

CAM1_D0_N

CAM0_D0_N HDMI0_D2_P

HDMI0_D2_N

HDMI0_D1_P

HDMI0_SCL

HDMI0_SDA

HDMI0_HOTPLUG

DSI0_D0_N

DSI0_D0_P

DSI0_D1_N

DSI0_D1_P

HDMI1_SDA

HDMI1_SCL

HDMI1_CEC

HDMI1_D1_N

HDMI_5v

HDMI0_D1_N

HDMI0_D0_P

HDMI0_D0_N

HDMI1_CK_N

HDMI1_CK_P

HDMI0_CK_P

HDMI0_CK_N

HDMI0_CEC

SDA1

SCL1

+3.3v

DSI1_D0_P

DSI1_D0_N

DSI1_D3_P

DSI1_D3_N

DSI1_D2_P

DSI1_D2_N

DSI1_C_P

DSI1_C_N

DSI1_D1_P

DSI1_D1_N

SDA1

SCL1

SDA0

SCL0

HDMI1_D2_N

HDMI1_D2_P

CAM0_C_P

+3.3v

DSI0_C_N

DSI0_C_P

HDMI1_HOTPLUG

HDMI1_D0_N

HDMI1_D0_P

HDMI0_CK_P

DSI1_C_P

DSI1_C_N

HDMI0_D0_P

HDMI0_D1_P

HDMI0_D1_N

HDMI0_D2_N

DSI0_D1_P

DSI0_D1_N

HDMI0_D0_N

DSI1_D2_N

HDMI0_CK_N

DSI1_D3_N

DSI1_D3_P

HDMI0_SCL

DSI1_D1_N

CAM_GPIO

SCL0

SDA0

CAM1_D3_P

HDMI0_D2_P

HDMI1_CK_P

HDMI1_CK_N

CAM0_C_N

CAM0_D1_P

HDMI1_D1_P

HDMI1_D1_N

HDMI1_D0_P

HDMI1_D0_N

CAM1_D2_P

CAM1_D3_N

HDMI_5v

DSI1_D1_P

CAM0_D0_N

CAM0_D0_P

CAM0_D1_N

HDMI0_SDA

DSI1_D2_P

ID_SC

DSI0_D0_N

GPIO_VREF

ID_SD

DSI0_D0_P

DSI1_D0_P

DSI1_D0_N

DSI0_C_P

DSI0_C_N

CAM1_D2_N

Camera Connectors Display Connectors

Jumpers to be fitted if Camera0 or Display0 are used.

Figure 4. CM4

Highspeed

Raspberry Pi Compute Module 4 IO Board

Chapter 4. Circuit Diagram 9

Page 11: Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket. The CM4IO board can be used as a reference design for examples of how to interface

1 2 3 4 5 6

1 2 3 4 5 6

A

B

C

D

A

B

C

D

Date:KiCad E.D.A. kicad (5.99.0-3207-g147540b3b)

Rev: 1Size: A4Id: 5/7

Title: Compute Module 4 IO Board - GPIO - EthernetFile: CM4_GPIO.kicad_schSheet: /CM4_GPIO ( Ethernet, GPIO, SDCARD)/

(c) Raspberry Pi Trading 2020

www.raspberrypi.org

GND

1 2

3 4

J9THD-02-R

1000pF

75

C1

C2

C3

C4

C5

C6

C7

C8

GREEN

YELLOW

TRD0+1

TRD3-10

VC111

VC212

VC313

VC414

LEDY_A15

LEDY_K16

LEDG_A17

LEDG_K18

SHIELD19

TRD0-2

SHIELD20

TRD1+3

CT4

CT5

TRD1-6

TRD2+7

TRD2-8

TRD3+9

U3

MagJack-A70-112-331N126

R2470R

TP3TestPoint

R3

470R

C1100n

GND

D1LED Red

R17 nf

R18 nf

R4 nf

TP5

TestPoint

R5 0R

GND

GND

D2LED Green

1

2

3

J3Conn_01x03

1

2

3

J1Conn_01x03

1

10

11 12

13 14

2

3 4

5 6

7 8

9

J2Conn_02x07_Odd_Even

GND

OUT1

GND2

nFLG3 EN 4

IN 5

U18RT9742GGJ5

R2912K 1%

DAT21

DET_A10

SHIELD 11

DAT3/CD2

CMD3

VDD4

CLK5

VSS6

DAT07

DAT18

DET_B9

J7Micro_SD_Card_Det

2

GN

D3

4

VC

C5 U5

74LVC1G07SE-7

GND GND

GND

R101k

C510u

1

10

11 12

13 14

15 16

17 18

19

2

20

21 22

23 24

25 26

27 28

29

3

30

31 32

33 34

35 36

37 38

39

4

40

5 6

7 8

9

J8THD-20-R

D1+1

D1-2

GN

D3

D2+4

D2-5

U2TPD4EUSB30

R11k

GND

GND

GND

D1+1

D1-2

GN

D3

D2+4

D2-5

U1TPD4EUSB30

GND

2

GN

D3

4

VC

C5

U9

74LVC1G07SE-7

GND

GPIO

600mA Max

600mA Max

NB SD signals are only available

on modules without eMMC

GND 1

Ethernet_Pair0_N10

nEXTRST100

Ethernet_Pair2_P 11Ethernet_Pair0_P12

GND 13GND14

Ethernet_nLED3(3.3v) 15Ethernet_SYNC_IN(1.8v)16

Ethernet_nLED2(3.3v) 17Ethernet_SYNC_OUT(1.8v)18

Ethernet_nLED1(3.3v) 19

GND2

EEPROM_nWP20

PI_nLED_Activity 21GND22

GND 23GPIO2624

GPIO21 25GPIO1926

GPIO20 27GPIO1328

GPIO16 29

Ethernet_Pair3_P 3

GPIO630

GPIO12 31GND32

GND 33GPIO534

ID_SC 35ID_SD36

GPIO7 37GPIO1138

GPIO8 39

Ethernet_Pair1_P4

GPIO940

GPIO25 41GND42

GND 43GPIO1044

GPIO24 45GPIO2246

GPIO23 47GPIO2748

GPIO18 49

Ethernet_Pair3_N 5

GPIO1750

GPIO15 51GND52

GND 53GPIO454

GPIO14 55GPIO356

SD_CLK 57GPIO258

GND 59

Ethernet_Pair1_N6

GND60

SD_DAT3 61SD_CMD62

SD_DAT0 63SD_DAT564

GND 65GND66

SD_DAT1 67SD_DAT468

SD_DAT2 69

GND 7

SD_DAT770

GND 71SD_DAT672

SD_VDD_Override 73GND74

SD_PWR_ON 75Reserved76

+5v_(Input) 77GPIO_VREF(1.8v/3.3v_Input)78

+5v_(Input) 79

GND8

SCL080

+5v_(Input) 81SDA082

+5v_(Input) 83+3.3v_(Output)84

+5v_(Input) 85+3.3v_(Output)86

+5v_(Input) 87+1.8v_(Output)88

WL_nDisable 89

Ethernet_Pair2_N 9

+1.8v_(Output)90

BT_nDisable 91RUN_PG92

nRPIBOOT 93AnalogIP194

nPI_LED_PWR 95AnalogIP096

Camera_GPIO 97GND98

Global_EN 99

Module1AComputeModule4

GND

TV_OUT

ID_SC

GPIO_VREF

GLOBAL_EN

CAM_GPIO

+5v

SCL0

ID_SD

nEXTRST

SDA0

+3.3v

RUN_PG

GLOBAL_EN

GPIO23

TRD3_P

SD_DAT3

TRD3_NGPIO14

TRD1_N

SD_CMD

TRD1_P

SD_CLK

+3.3v

GPIO25

GPIO11

GPIO7

ID_SC

+3.3v

nPWR_LED

+1.8v

SD_DAT1

SD_DAT0

SD_DAT2

SD_PWR

SD_DET

SD_PWR_ON

GPIO24

SD_PWR

GPIO18

+3.3v

GPIO15

TR3_TAP

TR0_TAP

TRD1_P

TRD0_N

TRD0_P

TRD3_N

TRD3_P

TRD2_N

TRD2_P

TRD1_N

GPIO10

TR2_TAP

TR1_TAP

ETH_LEDY

TRD0_P

TRD0_N

TR1_TAP

TR0_TAPGPIO_VREF

+3.3v

+3.3v

TRD2_P

TRD2_N

TR3_TAP

TR2_TAP

+3.3v

+3.3v

+3.3v +5v

ETH_LEDG

GPIO2

GPIO3

GPIO4

GPIO13

GPIO9

GPIO17

GPIO27

GPIO22

WL_nDis

EEPROM_nWP

SYNC_OUT

GPIO26

SYNC_IN

TRD0_P

GPIO15

GPIO14

SD_CLK

SD_DAT3

SD_DAT0

SD_PWR_ON

+5v

GPIO6

GPIO18

GPIO23

GPIO24

GPIO25

GND

GPIO8

GPIO7

GPIO12

ID_SC

GPIO16

GPIO20

TV_OUT

AIN1

GPIO21

TRD3_N

TRD3_P

GPIO_VREF

ETH_LEDY

ETH_LEDG

TRD2_P

TRD2_N

+5v

RUN_PG

GPIO11

GPIO9

GPIO26

AIN0

RUN_PG

ID_SD

GPIO5

TRD0_N

TRD1_N

TRD1_P

GPIO13

SD_DAT1

SD_DAT2

GPIO19

GPIO3

GPIO17

nRPIBOOT

GLOBAL_EN

GPIO8

nPWR_LED

BT_nDis

nRPIBOOT

GPIO4

GPIO2

SYNC_IN

+3.3v

+1.8v

GLOBAL_EN

GPIO27

GPIO22

SD_DET

GPIO10

GPIO5

SYNC_OUT

ID_SD

GPIO19

GND

GPIO6

GND

SD_CMD

EEPROM_nWP

GND

GND

GPIO21

AIN0

GPIO20

GPIO16

GPIO12

AIN1

Ethernet POEProtection

40Way GPIO Header

PWR LED

GPIO Voltage select

POE Header

CM4Lite SDCARD I/F

If compute modules is awake RUN_PG will be high so the button doesn't do anythingIf the compute module is asleep then RUN_PG will be at 0v and so pull global enable low

A button bwteen pins 13-14 can be used to wake up compute module from power down

Not Fitted headers

EEPROM write protect = Jumper Pins 3-4

Activity LED

Force RPIBOOT = Jumper Pins 1-2

Ethernet

Figure 5. CM4 GPIO

1 2 3 4 5 6

1 2 3 4 5 6

A

B

C

D

A

B

C

D

Date:KiCad E.D.A. kicad (5.99.0-3207-g147540b3b)

Rev: 1Size: A4Id: 6/7

Title: Compute Module 4 IO Board - PCIeFile: PCIe-routing.kicad_schSheet: /PCIe-connector/

(c) Raspberry Pi Trading 2020

www.raspberrypi.org

C3210u

nPRSNT1 A1

+3.3V A10

nPERST A11

GND A12

REFCLK+ A13

REFCLK- A14

GND A15

PERP0 A16

PERN0 A17

GND A18

+12V A2

+12V A3

GND A4

TCK A5

TDI A6

TD0 A7

TMS A8

+3.3V A9

+12vB1

+3.3vAUXB10

nWAKEB11

nCLKREQB12

GNDB13

PETP0B14

PETN0B15

GNDB16

nPRSNT2B17

GNDB18

+12vB2

+12vB3

GNDB4

SMCLKB5

SMDATB6

GNDB7

+3.3vB8

nTRSTB9

J1210018783-11200TLF

GND

C26

10u 35v

C27

10u 35v

C25

10u 35v

C45100uF

C3310u

R2312K 1%

C65

nf

R3015K 1%

C3010u

C29

100n

GND

R2210R

C28

10u 35v C62

100n

C3110u

1 2

L3SRN6045TA-3R3Y

GND

R24

47K 1%

C64

1.2nF

GND GND

GND

BST1

VIN2

EN3

SS4 FB 5COMP 6

GND 7SW 8

EP

9

U15AP64501SP-13

TP1TestPoint

C63

nf

C44

10u 35v

C43

10u 35v

PCIE_CLK_N

PCIE_CLK_P

PCIE_nRST

PCIE_CLK_nREQ

PCIE_TX_N

+12v

PCIE_RX_N

PCIE_RX_P

+12v

PCIE_TX_P

+3.3v

+12v

+3.3v

+3.3v

+12v

NB PCIe x1 takes a maximum of +12v @0.6A or +3.3v@3A , 10Watts combined

PCIe x1 connector

3.3v @ 3.3A PSU for PCIe Only ( 12v Input )

TX and RX have PN swaps to improve routing

Figure 6. PCIe

Connector

Raspberry Pi Compute Module 4 IO Board

Chapter 4. Circuit Diagram 10

Page 12: Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket. The CM4IO board can be used as a reference design for examples of how to interface

1 2 3 4 5 6

1 2 3 4 5 6

A

B

C

D

A

B

C

D

Date:KiCad E.D.A. kicad (5.99.0-3207-g147540b3b)

Rev: 1Size: A4Id: 2/7

Title: Compute Module 4 IO Board - USBFile: USB2-HUB.kicad_schSheet: /USB2-HUB/

(c) Raspberry Pi Trading 2020

www.raspberrypi.org

VBUS`

D-`

D+`

GND`

VBUS

D-

D+

GND

MT1

MT2

MT3

MT4

J13

690-008-221-904

GND GNDGND

GNDGND GND GND

C16100uF

GND

GND

GND

GND

Y124MHz

C827pF

GND

GND

R3615K 1%

GND

R1

436K

1%

C927pF

C610u

R1

336K

1%

GND

R1

236K

1%

R1

636K

1%

C3100n

C1010u

GND

GND

C7100n

IN1

GND2

EN3 nFault 4ILIM 5OUT 6

U7AP22653W6

GND

GND

GND

GND GND

C1710u

C2110u

VCC1

nOE10

SEL2

D_P3

D_N4

GND5

HSD0_M 6HSD0_P 7

HSD1_M 8HSD1_P 9

U13FSUSB42MUX

R82.2K 1%

GNDGND

C2010u

VBUS1

D-2D+3

ID4

GN

D5

Sh

ield

6

J11USB_OTG

GND

C1910u

R11

2.2K 1%

1

10

2

3 4

5 6

7 8

9

J14Conn_02x05_Odd_Even

C11100n

C15100n

C14100n

C4100n

C210u

D1+1

D1-2

GN

D3

D2+4

D2-5

U4TPD4EUSB30

USBDM_DN1/PRT_DIS_M1 1

VD

DA

33

10

TEST11

PRTPWR1/BC_EN1 12

OCS_N1 13

CRFILT14

VD

D33

15

PRTPWR2/BC_EN2 16

OCS_N2 17

PRTPWR3/BC_EN3 18

OCS_N3 19

USBDP_DN1/PRT_DIS_P1 2

PRTPWR4/BC_EN4 20

OCS_N4 21SDA/SMBDATA/NON_REM122

VD

D33

23

SCL/SMBCLK/CFG_SEL024

HS_IND/CFG_SEL125

RESET_N26

VBUS_DET27

SUSP_IND/LOCAL_PWR/NON_REM028

VD

DA

33

29

USBDM_DN2/PRT_DIS_M2 3

USBDM_UP30

USBDP_UP31

XTALOUT32XTALIN/CLKIN33

PLLFILT34

RBIAS35

VD

DA

33

36

VS

S37

USBDP_DN2/PRT_DIS_P2 4

VD

DA

33

5

USBDM_DN3/PRT_DIS_M3 6

USBDP_DN3/PRT_DIS_P3 7

USBDM_DN4/PRT_DIS_M4 8

USBDP_DN4/PRT_DIS_P4 9

U6USB2514B-I/M2

R1512K 1%

USB2_P

+3.3v

+5v

USB2_N

nEXTRST

USBOTG

nEXTRST

nOCS1

HD1_P

HD1_N

VBUS

HD3_P

HD3_N

USBH_P

USBH_N

+3.3v

USBD_N

USBD_P

HD4_N

HD2_N

HD2_P

nOCS1

HD1_P

nOCS1

PWR1

VBUS

HD2_N

HD2_P

HD4_P

+5v

VBUS

HD4_N

HD1_N

VBUS

+3.3v

HD4_P

PWR1 nOCS1

+3.3v

HD3_P

HD3_N

VBUS

USBD_N

USBD_P

nOCS1

If a cable in plugged into the uUSB socket the CM4 becomes a usb device

Expansion USB connector

Micro USB ESD protection

Stacked USB connectors

Current Limit switchUSB 2.0 Hub

Figure 7. USB2 Hub

1 2 3 4 5 6

1 2 3 4 5 6

A

B

C

D

A

B

C

D

Date:KiCad E.D.A. kicad (5.99.0-3207-g147540b3b)

Rev: 1Size: A4Id: 3/7

Title: Compute Module 4 IO Board - RTC - FANFile: RTC.kicad_schSheet: /RTC , Wakeup, FAN/

(c) Raspberry Pi Trading 2020

www.raspberrypi.org

2

GN

D3

4

VC

C5

U1474LVC1G07SE-7

GND

SDA1

SCL2

VDD3

GND4 PWM 5TACH 6

CLK 7nALERT 8

U11EMC2301-1-ACZL-TR

R21

36K 1%

Y2X32K768S301

C23100n

GND

GND

GND

OSCI1

OSCO2 ~INT~ 3

VS

S4

SDA 5SCL 6

CLKO 7

VD

D8

U8PCF85063AT/AAZ

R19

510K 1%

R20

510K 1%

1

2

3

4

J17

Molex 470531000

C22100n

C24100n

GND

C46100n

BT1Battery_Cell

GND

GND

12

3D3BAT54C-7-F

GND

+3.3v

GLOBAL_EN

+5vSDASCL

+12v

GLOBAL_ENnRTC_INT

+5v

nRTC_INT

+3.3v

+3.3v

+3.3v

SDA

SCL

SCL

SDA

IIC address : 0101_111x

FAN connector

IIC address : 1010_001x

FAN controler

RTC alarms can be used to wake up the Compute moduleNB an Alarm triggering while already awake will cause a resetThis can be used as a watchdog reset

GLOBAL_EN needs to be pulse low for >1mS

Also SMBUS alert IIC address : 0001_100x

The above circuit generates a pulse forGLOBAL_EN when nRTC_INT goes low

RTC and RTC wakeup

Figure 8. RTC Wakeup

FAN

Raspberry Pi Compute Module 4 IO Board

Chapter 4. Circuit Diagram 11

Page 13: Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket. The CM4IO board can be used as a reference design for examples of how to interface

1 2 3 4 5 6

1 2 3 4 5 6

A

B

C

D

A

B

C

D

Date:KiCad E.D.A. kicad (5.99.0-3207-g147540b3b)

Rev:Size: A4Id: 7/7

Title: Compute Module 4 IO Board - PSUsFile: PSUs.kicad_schSheet: /PSUs/

(c) Raspberry Pi Trading 2020

www.raspberrypi.org

R2612K 1%

C35

10u 35v

C37

10u 35v

C34

10u 35v

C39

10u 35v

C38

10u 35v

C41

10u 35vC58

100n

GND

GND

GND

C40

100n

TP4

TestPoint

GND

1

4

5

Q1DMP3013SFV-7

1

2

3

J19Barrel_Jack

D4MMBZ5242BLT3G

C36

100n 100v

GND

1

2

3

4

J20

AMP171826-4

TP2TestPoint

C4210u 35v

GND

GND

C4710u

TP6TestPoint

GND

C5110u

R27

12K 1%

C61

nf

GND

C5210u

C18100uF

R282.2K 1%

C4910u

R2520K 1%

1 2

L5SRN6045TA-3R3Y

C60

1.2nF

BST1

VIN2

EN3

SS4 FB 5COMP 6

GND 7SW 8

EP

9

U16AP64501SP-13

C57

100n

C59

nf

R910R

+5v

+12v

+12v

+5v

+12v

+12v+5v

5v @ 3A PSU

Can be used to power other devices if total loading on PSUs aren't exceeded

4 pin Power connectoras found on Floppy drives

+12v Input

2.1mm Tip +ve

+5v @ 3A PSU ( 7.5v-28v Input )

Can be used to power the CM4IO board. NB +12v will also be available at the DC Jack

+12v is only needed for PCIe and the FAN. If these aren't used then +12v isn't needed

Ideal diode to prevent reversepolarity at the input

Figure 9. PSU

Raspberry Pi Compute Module 4 IO Board

Chapter 4. Circuit Diagram 12

Page 14: Raspberry Pi Compute Module 4 IO Boardto a Raspberry Pi 4B is the addition of the a PCIe x1 socket. The CM4IO board can be used as a reference design for examples of how to interface