component
Control Panel: Workcell
Public Unreviewedby Caleb
Control Panel: Workcell — Raspberry Pi CM5 carrier and smart power-distribution hub for Adom workcells: four metered supply rails, a switched scaffold dock, networking, USB, CAN FD, and sensing.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
<!DOCTYPE html>
<html lang="en"><head><meta charset="utf-8">
<title>CM5 Pinout — Control-Panel Workcell V2.0.1</title>
<style>
:root{
--bg:#0e1116;--panel:#161b22;--line:#2d333b;--txt:#d6dde6;--dim:#8b949e;
--acc:#e87a1e;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--txt);font:14px/1.45 Inter,system-ui,sans-serif;display:flex;flex-direction:column;height:100vh}
header{padding:10px 16px;border-bottom:1px solid var(--line);display:flex;gap:16px;align-items:baseline;flex-wrap:wrap}
header h1{font-size:16px;margin:0}
header .sub{color:var(--dim);font-size:12px}
header input{margin-left:auto;background:var(--panel);border:1px solid var(--line);color:var(--txt);border-radius:6px;padding:6px 10px;width:260px;font-size:13px}
main{flex:1;display:flex;min-height:0}
#left{width:46%;min-width:430px;overflow:auto;padding:12px 16px;border-right:1px solid var(--line)}
#right{flex:1;overflow:auto;padding:12px 16px}
h2{font-size:13px;color:var(--dim);text-transform:uppercase;letter-spacing:.06em;margin:14px 0 8px}
.conn{display:grid;grid-template-columns:repeat(2,1fr);gap:3px;margin-bottom:10px}
.pin{display:flex;align-items:center;gap:6px;padding:2px 6px;border-radius:4px;border:1px solid transparent;cursor:pointer;font-size:11.5px;white-space:nowrap;overflow:hidden}
.pin .n{width:26px;text-align:right;color:var(--dim);font-variant-numeric:tabular-nums}
.pin .dot{width:9px;height:9px;border-radius:2px;flex:none}
.pin .nm{overflow:hidden;text-overflow:ellipsis}
.pin:hover,.pin.hl{border-color:var(--acc);background:#1f2630}
.pin.dimmed{opacity:.18}
.grp{margin-bottom:6px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}
.grp>summary{cursor:pointer;padding:7px 10px;display:flex;align-items:center;gap:8px;font-weight:600;list-style:none}
.grp>summary::-webkit-details-marker{display:none}
.grp>summary .dot{width:10px;height:10px;border-radius:3px}
.grp>summary .cnt{color:var(--dim);font-weight:400;font-size:12px;margin-left:auto}
.sub{margin:0 10px 8px 22px}
.sub h3{font-size:12px;color:var(--acc);margin:8px 0 2px;font-weight:600}
.sub .use{color:var(--dim);font-size:11.5px;margin:0 0 4px}
table{border-collapse:collapse;width:100%;font-size:12px}
td{padding:2px 8px 2px 0;vertical-align:top}
td.p{color:var(--dim);text-align:right;width:34px;font-variant-numeric:tabular-nums}
td.net{font-family:ui-monospace,monospace;color:#9ecbff}
tr.hl td{background:#1f2630}
tr{cursor:pointer}
.hidden{display:none}
footer{padding:6px 16px;border-top:1px solid var(--line);color:var(--dim);font-size:11px}
</style></head><body>
<header>
<h1>CM5 Pinout Tree Map</h1>
<span class="sub">Control-Panel Workcell V2.0.1 • J4 = CM5A 1–100 • J7 = CM5B 101–200 • from routed PCB netlist</span>
<input id="q" placeholder="filter: net, GPIO, pin #, subsystem…">
</header>
<main>
<div id="left"></div>
<div id="right"></div>
</main>
<footer>Click a pin or row to cross-highlight. Generated from the routed PCB netlist.</footer>
<script>
const PINS = [{"pin": 1, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 2, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 3, "name": "Ethernet_Pair3_P", "net": "/CM5_GPIO (Ethernet, SDCard)/ETH.TRD3_P", "net_short": "ETH.TRD3_P", "group": "Ethernet (GigE)", "sub": "Pair 3", "usage": "To HR911130A magjack J6 (TRD3)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 4, "name": "Ethernet_Pair1_P", "net": "/CM5_GPIO (Ethernet, SDCard)/ETH.TRD1_P", "net_short": "ETH.TRD1_P", "group": "Ethernet (GigE)", "sub": "Pair 1", "usage": "To HR911130A magjack J6 (TRD1)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 5, "name": "Ethernet_Pair3_N", "net": "/CM5_GPIO (Ethernet, SDCard)/ETH.TRD3_N", "net_short": "ETH.TRD3_N", "group": "Ethernet (GigE)", "sub": "Pair 3", "usage": "To HR911130A magjack J6 (TRD3)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 6, "name": "Ethernet_Pair1_N", "net": "/CM5_GPIO (Ethernet, SDCard)/ETH.TRD1_N", "net_short": "ETH.TRD1_N", "group": "Ethernet (GigE)", "sub": "Pair 1", "usage": "To HR911130A magjack J6 (TRD1)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 7, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 8, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 9, "name": "Ethernet_Pair2_N", "net": "/CM5_GPIO (Ethernet, SDCard)/ETH.TRD2_N", "net_short": "ETH.TRD2_N", "group": "Ethernet (GigE)", "sub": "Pair 2", "usage": "To HR911130A magjack J6 (TRD2)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 10, "name": "Ethernet_Pair0_N", "net": "/CM5_GPIO (Ethernet, SDCard)/ETH.TRD0_N", "net_short": "ETH.TRD0_N", "group": "Ethernet (GigE)", "sub": "Pair 0", "usage": "To HR911130A magjack J6 (TRD0)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 11, "name": "Ethernet_Pair2_P", "net": "/CM5_GPIO (Ethernet, SDCard)/ETH.TRD2_P", "net_short": "ETH.TRD2_P", "group": "Ethernet (GigE)", "sub": "Pair 2", "usage": "To HR911130A magjack J6 (TRD2)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 12, "name": "Ethernet_Pair0_P", "net": "/CM5_GPIO (Ethernet, SDCard)/ETH.TRD0_P", "net_short": "ETH.TRD0_P", "group": "Ethernet (GigE)", "sub": "Pair 0", "usage": "To HR911130A magjack J6 (TRD0)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 13, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 14, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 15, "name": "Ethernet_nLED3(3.3v)", "net": "/CM5_GPIO (Ethernet, SDCard)/ETH_LEDG", "net_short": "ETH_LEDG", "group": "Ethernet (GigE)", "sub": "LEDs", "usage": "Green speed LED in RJ45 bezel", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 16, "name": "FAN_TACHO", "net": "", "net_short": "", "group": "System", "sub": "Unused", "usage": "Fan tach/PWM \u2014 not used", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 17, "name": "Ethernet_nLED2(3.3v)", "net": "/CM5_GPIO (Ethernet, SDCard)/ETH_LEDY", "net_short": "ETH_LEDY", "group": "Ethernet (GigE)", "sub": "LEDs", "usage": "Yellow speed LED in RJ45 bezel", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 18, "name": "Ethernet_SYNC_OUT(3.3v)", "net": "", "net_short": "", "group": "Ethernet (GigE)", "sub": "Unused", "usage": "Ethernet SYNC_OUT \u2014 not used", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 19, "name": "FAN_PWM", "net": "", "net_short": "", "group": "System", "sub": "Unused", "usage": "Fan tach/PWM \u2014 not used", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 20, "name": "EEPROM_nWP", "net": "/CM5_GPIO (Ethernet, SDCard)/EEPROM_nWP", "net_short": "EEPROM_nWP", "group": "System", "sub": "EEPROM_nWP", "usage": "CM5 EEPROM write protect, jumper JP5 to GND", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 21, "name": "LED_nACT", "net": "/CM5_GPIO (Ethernet, SDCard)/LED_nACT", "net_short": "LED_nACT", "group": "Ethernet (GigE)", "sub": "LEDs", "usage": "Activity LED (LED_nACT)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 22, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 23, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 24, "name": "GPIO26", "net": "", "net_short": "", "group": "System", "sub": "Unused", "usage": "GPIO26 \u2014 unconnected (only free GPIO)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 25, "name": "GPIO21", "net": "/MCU_RST", "net_short": "MCU_RST", "group": "Scaffold dock (J2)", "sub": "MCU_RST (GPIO21)", "usage": "Direct reset of Scaffold RP2350 via J2.5", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 26, "name": "GPIO19", "net": "/CM5_GPIO (Ethernet, SDCard)/MIC_I2S-0.WS", "net_short": "MIC_I2S-0.WS", "group": "I2S microphone", "sub": "MIC_I2S-0 (GPIO19/20/18)", "usage": "N3 Carrier_I2S MEMS mic slot (mono, SEL=GND)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 27, "name": "GPIO20", "net": "/CM5_GPIO (Ethernet, SDCard)/MIC_I2S-0.SD", "net_short": "MIC_I2S-0.SD", "group": "I2S microphone", "sub": "MIC_I2S-0 (GPIO19/20/18)", "usage": "N3 Carrier_I2S MEMS mic slot (mono, SEL=GND)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 28, "name": "GPIO13", "net": "/CM5_GPIO (Ethernet, SDCard)/SENSOR_I2C-2.SCL", "net_short": "SENSOR_I2C-2.SCL", "group": "I2C buses", "sub": "SENSOR_I2C-2 (GPIO13/12)", "usage": "Sensor molecule bus: N2 + N4 8x8 Bosch-standard slots", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 29, "name": "GPIO16", "net": "/CM5_GPIO (Ethernet, SDCard)/SENSOR_I2C-2.INT", "net_short": "SENSOR_I2C-2.INT", "group": "I2C buses", "sub": "SENSOR_I2C-2 INT (GPIO16)", "usage": "Shared interrupt from sensor slots", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 30, "name": "GPIO6", "net": "/CM5_GPIO (Ethernet, SDCard)/CAN_SPI-4.nINT0", "net_short": "CAN_SPI-4.nINT0", "group": "CAN FD (SPI4)", "sub": "Interrupts", "usage": "MCP251863 nINT / nINT0(RX) / nINT1(TX)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 31, "name": "GPIO12", "net": "/CM5_GPIO (Ethernet, SDCard)/SENSOR_I2C-2.SDA", "net_short": "SENSOR_I2C-2.SDA", "group": "I2C buses", "sub": "SENSOR_I2C-2 (GPIO13/12)", "usage": "Sensor molecule bus: N2 + N4 8x8 Bosch-standard slots", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 32, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 33, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 34, "name": "GPIO5", "net": "/CM5_GPIO (Ethernet, SDCard)/CAN_SPI-4.nINT", "net_short": "CAN_SPI-4.nINT", "group": "CAN FD (SPI4)", "sub": "Interrupts", "usage": "MCP251863 nINT / nINT0(RX) / nINT1(TX)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 35, "name": "ID_SC", "net": "/ADOM LEDS/EXPD_NRST.IO1", "net_short": "EXPD_NRST.IO1", "group": "System", "sub": "EXPD_NRST (ID_SC)", "usage": "TCA6424A LED expander reset (force_eeprom_read=0)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 36, "name": "ID_SD", "net": "/SPARE.IO0", "net_short": "SPARE.IO0", "group": "Scaffold dock (J2)", "sub": "SPARE.IO0 (ID_SD)", "usage": "Spare GPIO to J2.1 via jumper JP1", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 37, "name": "GPIO7", "net": "/CM5_GPIO (Ethernet, SDCard)/CAN_SPI-4.nINT1", "net_short": "CAN_SPI-4.nINT1", "group": "CAN FD (SPI4)", "sub": "Interrupts", "usage": "MCP251863 nINT / nINT0(RX) / nINT1(TX)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 38, "name": "GPIO11", "net": "/CM5_GPIO (Ethernet, SDCard)/CAN_SPI-4.SCK", "net_short": "CAN_SPI-4.SCK", "group": "CAN FD (SPI4)", "sub": "SPI", "usage": "MCP251863 CAN-FD controller U15: SCK/nCS/SDO/SDI", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 39, "name": "GPIO8", "net": "/CM5_GPIO (Ethernet, SDCard)/CAN_SPI-4.nCS", "net_short": "CAN_SPI-4.nCS", "group": "CAN FD (SPI4)", "sub": "SPI", "usage": "MCP251863 CAN-FD controller U15: SCK/nCS/SDO/SDI", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 40, "name": "GPIO9", "net": "/CM5_GPIO (Ethernet, SDCard)/CAN_SPI-4.SDO", "net_short": "CAN_SPI-4.SDO", "group": "CAN FD (SPI4)", "sub": "SPI", "usage": "MCP251863 CAN-FD controller U15: SCK/nCS/SDO/SDI", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 41, "name": "GPIO25", "net": "/CM5_GPIO (Ethernet, SDCard)/PCIE.BT_REG_ON", "net_short": "PCIE.BT_REG_ON", "group": "M.2 / PCIe control", "sub": "BT_REG_ON (GPIO25)", "usage": "Bluetooth regulator enable to M.2 Key-E", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 42, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 43, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 44, "name": "GPIO10", "net": "/CM5_GPIO (Ethernet, SDCard)/CAN_SPI-4.SDI", "net_short": "CAN_SPI-4.SDI", "group": "CAN FD (SPI4)", "sub": "SPI", "usage": "MCP251863 CAN-FD controller U15: SCK/nCS/SDO/SDI", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 45, "name": "GPIO24", "net": "/CM5_GPIO (Ethernet, SDCard)/PCIE.WL_REG_ON", "net_short": "PCIE.WL_REG_ON", "group": "M.2 / PCIe control", "sub": "WL_REG_ON (GPIO24)", "usage": "Wi-Fi regulator enable to M.2 Key-E", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 46, "name": "GPIO22", "net": "/CM5_GPIO (Ethernet, SDCard)/DEBUG_BOOT", "net_short": "DEBUG_BOOT", "group": "PiProbe debug", "sub": "DEBUG_BOOT (GPIO22)", "usage": "BOOTSEL strap of on-board PiProbe RP2040 (N1)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 47, "name": "GPIO23", "net": "/CM5_GPIO (Ethernet, SDCard)/DEBUG_RST", "net_short": "DEBUG_RST", "group": "PiProbe debug", "sub": "DEBUG_RST (GPIO23)", "usage": "Reset of on-board PiProbe RP2040 (N1)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 48, "name": "GPIO27", "net": "/CM5_GPIO (Ethernet, SDCard)/MUX_USB3-1_SEL", "net_short": "MUX_USB3-1_SEL", "group": "USB3-1 mux control", "sub": "MUX_USB3-1_SEL (GPIO27)", "usage": "TMUXHS221: routes CM5 USB3-1 D\u00b1 to USB-A (NO) or M.2 Bluetooth (NC)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 49, "name": "GPIO18", "net": "/CM5_GPIO (Ethernet, SDCard)/MIC_I2S-0.SCK", "net_short": "MIC_I2S-0.SCK", "group": "I2S microphone", "sub": "MIC_I2S-0 (GPIO19/20/18)", "usage": "N3 Carrier_I2S MEMS mic slot (mono, SEL=GND)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 50, "name": "GPIO17", "net": "/CM5_GPIO (Ethernet, SDCard)/MUX_USB3-1_OEn", "net_short": "MUX_USB3-1_OEn", "group": "USB3-1 mux control", "sub": "MUX_USB3-1_OEn (GPIO17)", "usage": "TMUXHS221 output enable, active low", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 51, "name": "GPIO15", "net": "/SPARE.IO15", "net_short": "SPARE.IO15", "group": "Scaffold dock (J2)", "sub": "SPARE.IO15 (GPIO15)", "usage": "Spare GPIO to J2.7 via JP4 (alt: UART0 RX console)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 52, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 53, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 54, "name": "GPIO4", "net": "/SPARE.IO4", "net_short": "SPARE.IO4", "group": "Scaffold dock (J2)", "sub": "SPARE.IO4 (GPIO4)", "usage": "Spare GPIO to J2.2 via jumper JP2", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 55, "name": "GPIO14", "net": "/SPARE.IO14", "net_short": "SPARE.IO14", "group": "Scaffold dock (J2)", "sub": "SPARE.IO14 (GPIO14)", "usage": "Spare GPIO to J2.6 via JP3 (alt: UART0 TX console)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 56, "name": "GPIO3", "net": "/CM5_GPIO (Ethernet, SDCard)/PWR_I2C-1.SCL", "net_short": "PWR_I2C-1.SCL", "group": "I2C buses", "sub": "PWR_I2C-1 (GPIO2/3)", "usage": "Power telemetry bus: 4x INA228 @ 0x40/0x44/0x41/0x45 (internal 1.8k pulls on CM5)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 57, "name": "SD_CLK", "net": "/CM5_GPIO (Ethernet, SDCard)/SD_CLK", "net_short": "SD_CLK", "group": "microSD (CM5 Lite)", "sub": "SDIO 4-bit", "usage": "Molex 503398-1892 socket J5, SDR25 @50 MHz", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 58, "name": "GPIO2", "net": "/CM5_GPIO (Ethernet, SDCard)/PWR_I2C-1.SDA", "net_short": "PWR_I2C-1.SDA", "group": "I2C buses", "sub": "PWR_I2C-1 (GPIO2/3)", "usage": "Power telemetry bus: 4x INA228 @ 0x40/0x44/0x41/0x45 (internal 1.8k pulls on CM5)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 59, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 60, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 61, "name": "SD_DAT3", "net": "/CM5_GPIO (Ethernet, SDCard)/SD_DAT3", "net_short": "SD_DAT3", "group": "microSD (CM5 Lite)", "sub": "SDIO 4-bit", "usage": "Molex 503398-1892 socket J5, SDR25 @50 MHz", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 62, "name": "SD_CMD", "net": "/CM5_GPIO (Ethernet, SDCard)/SD_CMD", "net_short": "SD_CMD", "group": "microSD (CM5 Lite)", "sub": "SDIO 4-bit", "usage": "Molex 503398-1892 socket J5, SDR25 @50 MHz", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 63, "name": "SD_DAT0", "net": "/CM5_GPIO (Ethernet, SDCard)/SD_DAT0", "net_short": "SD_DAT0", "group": "microSD (CM5 Lite)", "sub": "SDIO 4-bit", "usage": "Molex 503398-1892 socket J5, SDR25 @50 MHz", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 64, "name": "SD_DAT5", "net": "", "net_short": "", "group": "microSD (CM5 Lite)", "sub": "Unused", "usage": "SD_DAT4-7 not used (4-bit bus)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 65, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 66, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 67, "name": "SD_DAT1", "net": "/CM5_GPIO (Ethernet, SDCard)/SD_DAT1", "net_short": "SD_DAT1", "group": "microSD (CM5 Lite)", "sub": "SDIO 4-bit", "usage": "Molex 503398-1892 socket J5, SDR25 @50 MHz", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 68, "name": "SD_DAT4", "net": "", "net_short": "", "group": "microSD (CM5 Lite)", "sub": "Unused", "usage": "SD_DAT4-7 not used (4-bit bus)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 69, "name": "SD_DAT2", "net": "/CM5_GPIO (Ethernet, SDCard)/SD_DAT2", "net_short": "SD_DAT2", "group": "microSD (CM5 Lite)", "sub": "SDIO 4-bit", "usage": "Molex 503398-1892 socket J5, SDR25 @50 MHz", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 70, "name": "SD_DAT7", "net": "", "net_short": "", "group": "microSD (CM5 Lite)", "sub": "Unused", "usage": "SD_DAT4-7 not used (4-bit bus)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 71, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 72, "name": "SD_DAT6", "net": "", "net_short": "", "group": "microSD (CM5 Lite)", "sub": "Unused", "usage": "SD_DAT4-7 not used (4-bit bus)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 73, "name": "SD_VDD_Override", "net": "", "net_short": "", "group": "microSD (CM5 Lite)", "sub": "Unused", "usage": "SD_VDD_Override not used", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 74, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 75, "name": "SD_PWR_ON", "net": "/CM5_GPIO (Ethernet, SDCard)/SD_PWR_ON", "net_short": "SD_PWR_ON", "group": "microSD (CM5 Lite)", "sub": "Power", "usage": "Enables RT9742 switch gating 3v3 to SD socket", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 76, "name": "VBAT", "net": "", "net_short": "", "group": "Power", "sub": "Unused", "usage": "VBAT RTC backup \u2014 not connected (no RTC battery)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 77, "name": "+5v_(Input)", "net": "+PS4_SENS", "net_short": "+PS4_SENS", "group": "Power", "sub": "5 V input", "usage": "Main 5 V from +PS4_SENS (PS4 input, fused 6.3 A, INA228-metered)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 78, "name": "GPIO_VREF(1.8v/3.3v_Input)", "net": "/CM5_GPIO (Ethernet, SDCard)/GPIO_VREF", "net_short": "GPIO_VREF", "group": "Power", "sub": "GPIO_VREF", "usage": "GPIO bank reference \u2014 strapped on CM5_GPIO sheet (3.3 V logic)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 79, "name": "+5v_(Input)", "net": "+PS4_SENS", "net_short": "+PS4_SENS", "group": "Power", "sub": "5 V input", "usage": "Main 5 V from +PS4_SENS (PS4 input, fused 6.3 A, INA228-metered)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 80, "name": "SCL0", "net": "/ADOM LEDS/LED_I2C-0.SCL", "net_short": "LED_I2C-0.SCL", "group": "I2C buses", "sub": "LED_I2C-0 (SCL0/SDA0)", "usage": "TCA6424A LED expander @ 0x22 (+ CM5 ID EEPROM bus)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 81, "name": "+5v_(Input)", "net": "+PS4_SENS", "net_short": "+PS4_SENS", "group": "Power", "sub": "5 V input", "usage": "Main 5 V from +PS4_SENS (PS4 input, fused 6.3 A, INA228-metered)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 82, "name": "SDA0", "net": "/ADOM LEDS/LED_I2C-0.SDA", "net_short": "LED_I2C-0.SDA", "group": "I2C buses", "sub": "LED_I2C-0 (SCL0/SDA0)", "usage": "TCA6424A LED expander @ 0x22 (+ CM5 ID EEPROM bus)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 83, "name": "+5v_(Input)", "net": "+PS4_SENS", "net_short": "+PS4_SENS", "group": "Power", "sub": "5 V input", "usage": "Main 5 V from +PS4_SENS (PS4 input, fused 6.3 A, INA228-metered)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 84, "name": "+3.3v_(Output)", "net": "/CM5_GPIO (Ethernet, SDCard)/+3v3_CM5", "net_short": "+3v3_CM5", "group": "Power", "sub": "3.3 V output", "usage": "CM5 3.3 V out (600 mA max) \u2014 I2C pull-ups, misc logic", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 85, "name": "+5v_(Input)", "net": "+PS4_SENS", "net_short": "+PS4_SENS", "group": "Power", "sub": "5 V input", "usage": "Main 5 V from +PS4_SENS (PS4 input, fused 6.3 A, INA228-metered)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 86, "name": "+3.3v_(Output)", "net": "/CM5_GPIO (Ethernet, SDCard)/+3v3_CM5", "net_short": "+3v3_CM5", "group": "Power", "sub": "3.3 V output", "usage": "CM5 3.3 V out (600 mA max) \u2014 I2C pull-ups, misc logic", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 87, "name": "+5v_(Input)", "net": "+PS4_SENS", "net_short": "+PS4_SENS", "group": "Power", "sub": "5 V input", "usage": "Main 5 V from +PS4_SENS (PS4 input, fused 6.3 A, INA228-metered)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 88, "name": "+1.8v_(Output)", "net": "", "net_short": "", "group": "Power", "sub": "1.8 V output", "usage": "CM5 1.8 V out \u2014 unused", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 89, "name": "WiFi_nDisable", "net": "", "net_short": "", "group": "System", "sub": "Unused", "usage": "WiFi/BT nDisable \u2014 not used (M.2 module instead of onboard radio)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 90, "name": "+1.8v_(Output)", "net": "", "net_short": "", "group": "Power", "sub": "1.8 V output", "usage": "CM5 1.8 V out \u2014 unused", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 91, "name": "BT_nDisable", "net": "", "net_short": "", "group": "System", "sub": "Unused", "usage": "WiFi/BT nDisable \u2014 not used (M.2 module instead of onboard radio)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 92, "name": "PWR_BUT", "net": "/CM5_GPIO (Ethernet, SDCard)/PWR_BUT", "net_short": "PWR_BUT", "group": "System", "sub": "PWR_BUT", "usage": "Power button SW1 (SKRPACE010)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 93, "name": "nRPIBOOT", "net": "", "net_short": "", "group": "System", "sub": "Unused", "usage": "nRPIBOOT \u2014 not broken out (CM5 Lite + SD workflow assumed)", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 94, "name": "CC1", "net": "", "net_short": "", "group": "System", "sub": "Unused", "usage": "CM5 CC1/CC2 \u2014 unused, USB-C CC handled by TUSB321", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 95, "name": "LED_nPWR", "net": "/CM5_GPIO (Ethernet, SDCard)/nPWR_LED", "net_short": "nPWR_LED", "group": "System", "sub": "LED_nPWR", "usage": "Power LED via Q1 SS8550 buffer", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 96, "name": "CC2", "net": "", "net_short": "", "group": "System", "sub": "Unused", "usage": "CM5 CC1/CC2 \u2014 unused, USB-C CC handled by TUSB321", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 97, "name": "CAM_GPIO0", "net": "/MCU_BOOT", "net_short": "MCU_BOOT", "group": "Scaffold dock (J2)", "sub": "MCU_BOOT (CAM_GPIO0)", "usage": "Boot strap of Scaffold RP2350 via J2.4", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 98, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 99, "name": "PMIC_ENABLE", "net": "", "net_short": "", "group": "Power", "sub": "Unused", "usage": "PMIC_ENABLE \u2014 not connected", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 100, "name": "CAM_GPIO1", "net": "/+PS2_EN_IO35", "net_short": "+PS2_EN_IO35", "group": "Scaffold dock (J2)", "sub": "PS2 enable (CAM_GPIO1)", "usage": "Drives NSi8210 isolator -> TPS22990 switch: PS2 rail to Scaffold blade P2", "connector": "J4 (CM5A, pins 1-100)"}, {"pin": 101, "name": "USB_OTG_ID", "net": "/CM5_HighSpeed/USB_OTG", "net_short": "USB_OTG", "group": "USB 2.0 OTG", "sub": "USB_OTG ID", "usage": "OTG ID strap (0 = host) \u2014 CM5 USB2 hosts the PiProbe", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 102, "name": "PCIe_nCLKREQ", "net": "/CM5_HighSpeed/PCIE.nCLKREQ", "net_short": "PCIE.nCLKREQ", "group": "PCIe Gen2 x1", "sub": "Control", "usage": "nCLKREQ / nWAKE / nRST to M.2", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 103, "name": "USB2_N", "net": "/CM5_HighSpeed/DEBUG_USB2_N", "net_short": "DEBUG_USB2_N", "group": "USB 2.0 OTG", "sub": "USB2 D\u00b1", "usage": "Dedicated USB2 port -> PiProbe N1 (CMSIS-DAP + UART bridge)", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 104, "name": "PCIE_nWAKE", "net": "/CM5_HighSpeed/PCIE.nWAKE", "net_short": "PCIE.nWAKE", "group": "PCIe Gen2 x1", "sub": "Control", "usage": "nCLKREQ / nWAKE / nRST to M.2", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 105, "name": "USB2_P", "net": "/CM5_HighSpeed/DEBUG_USB2_P", "net_short": "DEBUG_USB2_P", "group": "USB 2.0 OTG", "sub": "USB2 D\u00b1", "usage": "Dedicated USB2 port -> PiProbe N1 (CMSIS-DAP + UART bridge)", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 106, "name": "PCIE_PWR_EN", "net": "/CM5_HighSpeed/PCIE.PWR_EN", "net_short": "PCIE.PWR_EN", "group": "PCIe Gen2 x1", "sub": "Power enable", "usage": "Enables AP3441 buck U14 -> 3.3 V to M.2 slot", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 107, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 108, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 109, "name": "PCIe_nRST", "net": "/CM5_HighSpeed/PCIE_nRST", "net_short": "PCIE_nRST", "group": "PCIe Gen2 x1", "sub": "Control", "usage": "nCLKREQ / nWAKE / nRST to M.2", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 110, "name": "PCIe_CLK_P", "net": "/CM5_HighSpeed/WIFI_PCIE.CLK_P", "net_short": "WIFI_PCIE.CLK_P", "group": "PCIe Gen2 x1", "sub": "Lanes", "usage": "CLK/RX/TX pairs to M.2 Key-E slot J8 (Wi-Fi, e.g. AX210)", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 111, "name": "VBUS_EN", "net": "/CM5_HighSpeed/3v3_PWR_EN", "net_short": "3v3_PWR_EN", "group": "PCIe Gen2 x1", "sub": "VBUS_EN", "usage": "Enables AP3441 buck U5 -> board +3v3 rail", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 112, "name": "PCIe_CLK_N", "net": "/CM5_HighSpeed/WIFI_PCIE.CLK_N", "net_short": "WIFI_PCIE.CLK_N", "group": "PCIe Gen2 x1", "sub": "Lanes", "usage": "CLK/RX/TX pairs to M.2 Key-E slot J8 (Wi-Fi, e.g. AX210)", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 113, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 114, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 115, "name": "MIPI0_D0_N", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 116, "name": "PCIe_RX_P", "net": "/CM5_HighSpeed/WIFI_PCIE.RX_P", "net_short": "WIFI_PCIE.RX_P", "group": "PCIe Gen2 x1", "sub": "Lanes", "usage": "CLK/RX/TX pairs to M.2 Key-E slot J8 (Wi-Fi, e.g. AX210)", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 117, "name": "MIPI0_D0_P", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 118, "name": "PCIe_RX_N", "net": "/CM5_HighSpeed/WIFI_PCIE.RX_N", "net_short": "WIFI_PCIE.RX_N", "group": "PCIe Gen2 x1", "sub": "Lanes", "usage": "CLK/RX/TX pairs to M.2 Key-E slot J8 (Wi-Fi, e.g. AX210)", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 119, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 120, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 121, "name": "MIPI0_D1_N", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 122, "name": "PCIe_TX_P", "net": "/CM5_HighSpeed/WIFI_PCIE.TX_P", "net_short": "WIFI_PCIE.TX_P", "group": "PCIe Gen2 x1", "sub": "Lanes", "usage": "CLK/RX/TX pairs to M.2 Key-E slot J8 (Wi-Fi, e.g. AX210)", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 123, "name": "MIPI0_D1_P", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 124, "name": "PCIe_TX_N", "net": "/CM5_HighSpeed/WIFI_PCIE.TX_N", "net_short": "WIFI_PCIE.TX_N", "group": "PCIe Gen2 x1", "sub": "Lanes", "usage": "CLK/RX/TX pairs to M.2 Key-E slot J8 (Wi-Fi, e.g. AX210)", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 125, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 126, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 127, "name": "MIPI0_C_N", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 128, "name": "USB3-0-RX_N", "net": "/CM5_HighSpeed/USER_USB3-0.RX_N", "net_short": "USER_USB3-0.RX_N", "group": "USB3-0 (USB-C J10)", "sub": "SuperSpeed + D\u00b1", "usage": "Via HD3SS3212 orientation mux; TUSB321 CC (DFP host, 3 A); VBUS from PS2 via TPS25940 eFuse + Q2", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 129, "name": "MIPI0_C_P", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 130, "name": "USB3-0-RX_P", "net": "/CM5_HighSpeed/USER_USB3-0.RX_P", "net_short": "USER_USB3-0.RX_P", "group": "USB3-0 (USB-C J10)", "sub": "SuperSpeed + D\u00b1", "usage": "Via HD3SS3212 orientation mux; TUSB321 CC (DFP host, 3 A); VBUS from PS2 via TPS25940 eFuse + Q2", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 131, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 132, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 133, "name": "MIPI0_D2_N", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 134, "name": "USB3-0-D_P", "net": "/CM5_HighSpeed/USER_USB3-0.D_P", "net_short": "USER_USB3-0.D_P", "group": "USB3-0 (USB-C J10)", "sub": "SuperSpeed + D\u00b1", "usage": "Via HD3SS3212 orientation mux; TUSB321 CC (DFP host, 3 A); VBUS from PS2 via TPS25940 eFuse + Q2", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 135, "name": "MIPI0_D2_P", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 136, "name": "USB3-0-D_N", "net": "/CM5_HighSpeed/USER_USB3-0.D_N", "net_short": "USER_USB3-0.D_N", "group": "USB3-0 (USB-C J10)", "sub": "SuperSpeed + D\u00b1", "usage": "Via HD3SS3212 orientation mux; TUSB321 CC (DFP host, 3 A); VBUS from PS2 via TPS25940 eFuse + Q2", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 137, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 138, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 139, "name": "MIPI0_D3_N", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 140, "name": "USB3-0-TX_N", "net": "/CM5_HighSpeed/USER_USB3-0.TX_N", "net_short": "USER_USB3-0.TX_N", "group": "USB3-0 (USB-C J10)", "sub": "SuperSpeed + D\u00b1", "usage": "Via HD3SS3212 orientation mux; TUSB321 CC (DFP host, 3 A); VBUS from PS2 via TPS25940 eFuse + Q2", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 141, "name": "MIPI0_D3_P", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 142, "name": "USB3-0-TX_P", "net": "/CM5_HighSpeed/USER_USB3-0.TX_P", "net_short": "USER_USB3-0.TX_P", "group": "USB3-0 (USB-C J10)", "sub": "SuperSpeed + D\u00b1", "usage": "Via HD3SS3212 orientation mux; TUSB321 CC (DFP host, 3 A); VBUS from PS2 via TPS25940 eFuse + Q2", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 143, "name": "HDMI1_HOTPLUG", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 144, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 145, "name": "HDMI1_SDA", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 146, "name": "HDMI1_TX2_P", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 147, "name": "HDMI1_SCL", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 148, "name": "HDMI1_TX2_N", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 149, "name": "HDMI1_CEC", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 150, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 151, "name": "HDMI0_CEC", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 152, "name": "HDMI1_TX1_P", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 153, "name": "HDMI0_HOTPLUG", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 154, "name": "HDMI1_TX1_N", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 155, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 156, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 157, "name": "USB3-1-RX_N", "net": "/CM5_HighSpeed/USER_USB3-1.RX_N", "net_short": "USER_USB3-1.RX_N", "group": "USB3-1 (USB-A J9)", "sub": "SuperSpeed + D\u00b1", "usage": "SS lanes direct to USB-A; D\u00b1 via TMUXHS221 mux (shared with M.2 Bluetooth USB)", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 158, "name": "HDMI1_TX0_P", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 159, "name": "USB3-1-RX_P", "net": "/CM5_HighSpeed/USER_USB3-1.RX_P", "net_short": "USER_USB3-1.RX_P", "group": "USB3-1 (USB-A J9)", "sub": "SuperSpeed + D\u00b1", "usage": "SS lanes direct to USB-A; D\u00b1 via TMUXHS221 mux (shared with M.2 Bluetooth USB)", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 160, "name": "HDMI1_TX0_N", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 161, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 162, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 163, "name": "USB3-1-D_P", "net": "/CM5_HighSpeed/MUX_USB3-1.D_P", "net_short": "MUX_USB3-1.D_P", "group": "USB3-1 (USB-A J9)", "sub": "SuperSpeed + D\u00b1", "usage": "SS lanes direct to USB-A; D\u00b1 via TMUXHS221 mux (shared with M.2 Bluetooth USB)", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 164, "name": "HDMI1_CLK_P", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 165, "name": "USB3-1-D_N", "net": "/CM5_HighSpeed/MUX_USB3-1.D_N", "net_short": "MUX_USB3-1.D_N", "group": "USB3-1 (USB-A J9)", "sub": "SuperSpeed + D\u00b1", "usage": "SS lanes direct to USB-A; D\u00b1 via TMUXHS221 mux (shared with M.2 Bluetooth USB)", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 166, "name": "HDMI1_CLK_N", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 167, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 168, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 169, "name": "USB3-1-TX_N", "net": "/CM5_HighSpeed/USER_USB3-1.TX_N", "net_short": "USER_USB3-1.TX_N", "group": "USB3-1 (USB-A J9)", "sub": "SuperSpeed + D\u00b1", "usage": "SS lanes direct to USB-A; D\u00b1 via TMUXHS221 mux (shared with M.2 Bluetooth USB)", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 170, "name": "HDMI0_TX2_P", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 171, "name": "USB3-1-TX_P", "net": "/CM5_HighSpeed/USER_USB3-1.TX_P", "net_short": "USER_USB3-1.TX_P", "group": "USB3-1 (USB-A J9)", "sub": "SuperSpeed + D\u00b1", "usage": "SS lanes direct to USB-A; D\u00b1 via TMUXHS221 mux (shared with M.2 Bluetooth USB)", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 172, "name": "HDMI0_TX2_N", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 173, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 174, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 175, "name": "MIPI1_D0_N", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 176, "name": "HDMI0_TX1_P", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 177, "name": "MIPI1_D0_P", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 178, "name": "HDMI0_TX1_N", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 179, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 180, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 181, "name": "MIPI1_D1_N", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 182, "name": "HDMI0_TX0_P", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 183, "name": "MIPI1_D1_P", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 184, "name": "HDMI0_TX0_N", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 185, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 186, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 187, "name": "MIPI1_C_N", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 188, "name": "HDMI0_CLK_P", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 189, "name": "MIPI1_C_P", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 190, "name": "HDMI0_CLK_N", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 191, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 192, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 193, "name": "MIPI1_D2_N", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 194, "name": "MIPI1_D3_N", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 195, "name": "MIPI1_D2_P", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 196, "name": "MIPI1_D3_P", "net": "", "net_short": "", "group": "MIPI CSI/DSI (unused)", "sub": "", "usage": "No camera/display connectors fitted", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 197, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 198, "name": "GND", "net": "GND", "net_short": "GND", "group": "Ground", "sub": "", "usage": "", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 199, "name": "HDMI0_SDA", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}, {"pin": 200, "name": "HDMI0_SCL", "net": "", "net_short": "", "group": "HDMI (unused)", "sub": "", "usage": "Headless design \u2014 HDMI0/HDMI1 not brought out", "connector": "J7 (CM5B, pins 101-200)"}];
const COLORS = {
'Ground':'#3a4250','Power':'#e8554d','Ethernet (GigE)':'#46b06b','microSD (CM5 Lite)':'#c9a227',
'I2C buses':'#9d6fe8','CAN FD (SPI4)':'#e87a1e','I2S microphone':'#e86fb1','USB 2.0 OTG':'#3fa7c4',
'USB3-0 (USB-C J10)':'#2f81f7','USB3-1 (USB-A J9)':'#79c0ff','USB3-1 mux control':'#58a6ff',
'PCIe Gen2 x1':'#56d4bc','M.2 / PCIe control':'#3ddbd9','PiProbe debug':'#f2cc60',
'Scaffold dock (J2)':'#ff9e64','System':'#b6bfca','HDMI (unused)':'#4a5160','MIPI CSI/DSI (unused)':'#4a5160'};
const ORDER = Object.keys(COLORS).filter(g=>g!=='Ground').concat(['Ground']);
const left=document.getElementById('left'), right=document.getElementById('right');
function pinCell(p){
const d=document.createElement('div');d.className='pin';d.dataset.pin=p.pin;d.dataset.group=p.group;
d.title=`${p.pin} ${p.name}\n${p.net_short||'n.c.'}\n${p.group}${p.usage?'\n'+p.usage:''}`;
d.innerHTML=`<span class="n">${p.pin}</span><span class="dot" style="background:${COLORS[p.group]||'#888'}"></span><span class="nm">${p.net_short||p.name||''}</span>`;
d.onclick=()=>select(p.pin);
return d;
}
[['J4 — CM5A (low-speed / GPIO)',1,100],['J7 — CM5B (high-speed)',101,200]].forEach(([t,lo,hi])=>{
const h=document.createElement('h2');h.textContent=t;left.appendChild(h);
const g=document.createElement('div');g.className='conn';
PINS.filter(p=>p.pin>=lo&&p.pin<=hi).forEach(p=>g.appendChild(pinCell(p)));
left.appendChild(g);
});
// tree
ORDER.forEach(gname=>{
const gp=PINS.filter(p=>p.group===gname);
if(!gp.length)return;
const det=document.createElement('details');det.className='grp';det.open=(gname!=='Ground'&&!gname.includes('unused'));
det.dataset.group=gname;
det.innerHTML=`<summary><span class="dot" style="background:${COLORS[gname]}"></span>${gname}<span class="cnt">${gp.length} pins</span></summary>`;
const subs={};gp.forEach(p=>{(subs[p.sub||'—']=subs[p.sub||'—']||[]).push(p)});
for(const [s,list] of Object.entries(subs)){
const sd=document.createElement('div');sd.className='sub';
if(s!=='—')sd.innerHTML=`<h3>${s}</h3>`;
if(list[0].usage)sd.innerHTML+=`<p class="use">${list[0].usage}</p>`;
const tb=document.createElement('table');
list.sort((a,b)=>a.pin-b.pin).forEach(p=>{
const tr=document.createElement('tr');tr.dataset.pin=p.pin;
tr.innerHTML=`<td class="p">${p.pin}</td><td>${p.name}</td><td class="net">${p.net_short||'n.c.'}</td>`;
tr.onclick=()=>select(p.pin);tb.appendChild(tr);
});
sd.appendChild(tb);det.appendChild(sd);
}
right.appendChild(det);
});
function select(pin){
document.querySelectorAll('.hl').forEach(e=>e.classList.remove('hl'));
document.querySelectorAll(`[data-pin="${pin}"]`).forEach(e=>{
e.classList.add('hl');
if(e.tagName==='TR'){const d=e.closest('details');d.open=true;e.scrollIntoView({block:'nearest'});}
});
}
document.getElementById('q').addEventListener('input',e=>{
const q=e.target.value.toLowerCase().trim();
PINS.forEach(p=>{
const hay=`${p.pin} ${p.name} ${p.net_short} ${p.group} ${p.sub} ${p.usage}`.toLowerCase();
const hit=!q||hay.includes(q);
document.querySelectorAll(`[data-pin="${p.pin}"]`).forEach(el=>{
if(el.classList.contains('pin'))el.classList.toggle('dimmed',!hit);
else el.classList.toggle('hidden',!hit);
});
});
if(q)document.querySelectorAll('details.grp').forEach(d=>d.open=true);
});
</script></body></html>