![5 node raspberry pi 3 com carrier board](https://kumkoniak.com/106.jpg)
![5 node raspberry pi 3 com carrier board 5 node raspberry pi 3 com carrier board](https://benosteen.files.wordpress.com/2012/04/dsc0009.jpg)
Some way to reflash, though this can be rare (eg.Serial console (via either USB or directly exposed RS232).Power control (pins to control from another machine, plus an onboard reset button).Connection to the onboard control switch (unless this would cost us a node, in which case, we could handle by giving it its own jack on the board).SPI or I2C connections to onboard switches to configure them.Its own RJ45 connector on the board connected to its builtin Ethernet for out of band control.Sufficient UARTs (via USB or I2C UART adapter) for all N experiment nodes.Sufficient USB 2.0 ports to act as a host for all N experiment nodes via an onboard hub.Sufficient GPIOs for functions listed above (may require an I2C GPIO expander depending on N).Status of nRPI_BOOT and/or EEPROM_nWP pins.Power via CM4_3.3V, which is off when GLOBAL_EN is pulled low.LEDs for debugging (exact set not yet determined, these are some possibilities).
![5 node raspberry pi 3 com carrier board 5 node raspberry pi 3 com carrier board](https://www.mininodes.com/wp-content/uploads/2018/10/mininodes-raspberry-pi-multiple-com-carrier-board-9.jpg)
- Control network: Ethernet via PCIe Ethernet controller (eg.
- Experiment network: builtin Ethernet connected to an onboard switch.
- USB client device for rpiboot/flashing (eg USB_N/ USB_P pins) connected to a USB hub/port on the control node.
- Serial console (through built-in UART pins ( GPIO14/TXD0 and GPIO15/RXD0) connected to a UART on the control node`).
- Control over EEPROM write enable/disable (via the EEPROM_nWP pin, connected to a GPIO on the control node).
- Control over boot from onboard eMMC or rpiboot (USB) (via the nRPI_BOOT pin, connected to a GPIO on the control node).
-
Power control (via access to the GLOBAL_EN pin, connected to a GPIO on the control node - note: this is at 5V, so we likely want something between it and the GPIO to prevent leakage current).Requirements for each experiment node (CM4 socket - N of them): These boards are designed to be used with CM4 with onboard eMMC (size TBD, but likely 16GB), no WiFi. The goal is for each board to have the minimum number of external connectors (power, Ethernet, USB, etc.) while meeting the requirements below. In addition to the experiment nodes, there will be one onboard control node that will handle booting the experiment nodes, power control over them, configuring the onboard switches, etc. Our current attempts at design have tried aiming for N 5 or 8 experiment nodes per board. The goal is to get as many CM4s per board as is practical given physical constraints and availability of things like Ethernet ports on the on-board chips. In contrast to other carrier boards, this will be designed for density, dual onboard networks, and manageability. This ticket collects requirements and notes for the design of the Raspberry PI CM4 carrier boards for CloudLab.