Industrial MESBox Controller Design

Configure 100Ω Ethernet rules, route the Ethernet pairs first, then run full DRC.
I’ll configure the Ethernet nets for 100 Ω differential routing, route the Ethernet pairs first, then run a full DRC and report the remaining board issues.
I’m blocked because the account has no available ACUs, so I can’t configure routing rules, route traces, or run DRC right now.
Accomplished before this request:
  • Ethernet schematic support was completed: RJ45 center taps, LEDs, ESD arrays, KSZ9477 straps/clock/reset/MDIO, and CM4 uplink.
  • Ethernet block placement was completed: RJ45s on the board edge, ESD arrays behind them, KSZ9477 behind the protection row, and crystal/load caps near U61.
  • Ethernet layout constraints were documented in the project file.
Remaining work when ACUs are available:
  • Configure 100 Ω differential-pair rules for all Ethernet pairs.
  • Route Ethernet pairs first from RJ45 → ESD → KSZ9477.
  • Route remaining power/control nets.
  • Run full DRC and fix/report remaining layout violations.
Review constraints
List Ethernet pairs
Manual routing checklist
Estimate pair geometry
D6
D12
D11
D5
D3
D13
D7
D8
D9
D2
U50
D10
U1
J20
U30
U20
PS1
D4
J2
J1
J3
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U20 DO_(IO1) - U1 PA6
U61 AVDDL - U61 AVDDL
U70 OUT1 - J20 9
U70 IN4 - U1 PE10
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
IC2 RX2 - J20 8
U61 SDI/SDA/MDIO - SOM1 GPIO2
U11 TX2 - U1 PB12
U10 GND1 - IC1 GND1
U70 ST1/2 - U1 PE11
U61 AVDDL - U61 DVDDL
R51 P2 - J1 ~
U61 TXRX3M_A - J3 TRD1-
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 DVDDL - U61 DVDDL
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 TXRX3M_D - J3 TRD4-
R56 P2 - J3 ~
U61 TXRX2P_D - J2 TRD4+
U61 TXRX1M_D - J1 TRD4-
U61 TXRX1M_C - J1 TRD3-
IC2 RX1 - J20 7
U61 TXRX1P_A - J1 TRD1+
J1 ~ - U61 LED1_1
J2 ~ - U61 LED2_0
U61 TXRX5P_A - SOM1 ETHERNET_PAIR0_P
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 S_REXT - R3 P1
U61 TXRX3P_B - J3 TRD2+
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 TXRX2P_A - J2 TRD1+
U61 ISET - R2 P1
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 LED3_1 - R48 P1
U61 TXRX3P_B - J3 TRD2+
SOM1 +5V(INPUT)__5 - PS1 VOUT
U10 GND1 - IC1 GND1
U10 GND1 - IC1 GND1
U61 LED5_1 - R50 P1
U61 TXRX1M_C - J1 TRD3-
U61 TXRX2P_A - J2 TRD1+
U1 BOOT0 - R1 P1
U61 TXRX3M_B - J3 TRD2-
U61 TXRX1P_C - J1 TRD3+
U61 XO - X1 P2
U61 TXRX2P_A - J2 TRD1+
U10 TX2 - U1 PB1
U61 TXRX3P_A - J3 TRD1+
U61 AVDDL - U61 AVDDL
U61 VDDIO - U61 VDDIO
U61 TXRX1P_D - J1 TRD4+
U61 TXRX2M_C - J2 TRD3-
U10 VDD1 - IC1 VDD1
U61 AVDDL - U61 DVDDL
U10 TX1 - U1 PB0
U61 TXRX2M_B - J2 TRD2-
U61 TXRX3M_A - J3 TRD1-
U61 TXRX5M_B - SOM1 ETHERNET_PAIR1_N
U61 TXRX1P_B - J1 TRD2+
IC1 TX2 - U1 PB10
U61 S_REXT - R3 P1
IC1 TX1 - U1 PB2
U61 VDDIO - U61 VDDIO
U70 OUT3 - J20 11
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U70 OUT1 - J20 9
IC1 TX1 - U1 PB2
U70 OUT2 - J20 10
U61 TXRX1M_A - J1 TRD1-
U61 TXRX2M_B - J2 TRD2-
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U1 NRST - U30 ~RESET
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 TXRX5P_C - SOM1 ETHERNET_PAIR2_P
U61 TXRX1P_D - J1 TRD4+
U61 TXRX3M_D - J3 TRD4-
U61 AVDDL - U61 AVDDL
U61 TXRX2M_C - J2 TRD3-
U61 TXRX3M_B - J3 TRD2-
U61 TXRX1P_B - J1 TRD2+
U10 TX2 - U1 PB1
U61 TXRX1M_A - J1 TRD1-
U61 TXRX2P_B - J2 TRD2+
U61 TXRX2P_B - J2 TRD2+
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 TXRX3P_A - J3 TRD1+
U61 TXRX1M_B - J1 TRD2-
U61 SDI/SDA/MDIO - SOM1 GPIO2
U61 TXRX3M_A - J3 TRD1-
U61 TXRX3P_D - J3 TRD4+
U70 IN2 - U1 PE8
U61 XO - X1 P2
U61 TXRX3P_C - J3 TRD3+
U61 IBA - R47 P1
U61 TXRX1P_B - J1 TRD2+
U61 DVDDL - U61 DVDDL
U61 SCL/MDC - SOM1 GPIO3
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 TXRX2M_D - J2 TRD4-
U10 RX1 - J20 1
J2 ~ - U61 LED2_1
U61 TXRX3P_D - J3 TRD4+
U61 TXRX3M_D - J3 TRD4-
U61 TXRX2M_A - J2 TRD1-
U61 VDDIO - U61 VDDIO
U61 TXRX5P_D - SOM1 ETHERNET_PAIR3_P
IC1 RX1 - J20 3
U61 TXRX3P_C - J3 TRD3+
U20 ~CS - U1 PA4
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 VDDIO - U61 VDDIO
U61 TXRX2M_D - J2 TRD4-
U70 OUT2 - J20 10
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 TXRX5M_B - SOM1 ETHERNET_PAIR1_N
U50 IN - D1 K
U61 TXRX3P_B - J3 TRD2+
U61 TXRX1P_C - J1 TRD3+
R56 P2 - J3 ~
U61 TXRX2M_A - J2 TRD1-
U70 IN1 - U1 PE7
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U70 IN3 - U1 PE9
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 XI - X1 P1
J2 ~ - U61 LED2_1
U61 TXRX3M_A - J3 TRD1-
U61 XI - X1 P1
U61 RESET_N - U1 PD3
U61 AVDDL - U61 DVDDL
U61 TXRX5P_C - SOM1 ETHERNET_PAIR2_P
U61 TXRX3M_C - J3 TRD3-
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U11 TX1 - U1 PB11
U10 VDD1 - IC1 VDD1
IC1 RX1 - J20 3
R55 P2 - J3 ~
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 TXRX2P_C - J2 TRD3+
U61 TXRX5P_A - SOM1 ETHERNET_PAIR0_P
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
PS1 VIN - U50 OUT
IC2 TX2 - U1 PB14
U61 TXRX1M_D - J1 TRD4-
U70 IN2 - U1 PE8
U20 ~CS - U1 PA4
U61 AVDDL - U61 DVDDL
U61 TXRX1M_D - J1 TRD4-
SWCLK
U20 DI_(IO0) - U1 PA7
SOM1 +5V(INPUT)__5 - PS1 VOUT
U61 TXRX2M_A - J2 TRD1-
R51 P2 - J1 ~
U61 TXRX2P_B - J2 TRD2+
U61 TXRX2M_C - J2 TRD3-
IC2 TX2 - U1 PB14
U61 AVDDL - U61 AVDDL
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 XI - X1 P1
U61 LED3_1 - R48 P1
U61 TXRX3P_D - J3 TRD4+
U61 AVDDL - U61 DVDDL
U61 TXRX5M_C - SOM1 ETHERNET_PAIR2_N
U11 RX2 - J20 6
U61 TXRX1M_B - J1 TRD2-
R55 P2 - J3 ~
U61 TXRX3M_B - J3 TRD2-
J3 ~ - U61 LED4_0
R53 P2 - J2 ~
U61 TXRX1M_C - J1 TRD3-
U70 IN1 - U1 PE7
U10 RX1 - J20 1
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 LED5_1 - R50 P1
U61 TXRX1M_A - J1 TRD1-
U61 TXRX3M_C - J3 TRD3-
U61 INTRP_N - U1 PD4
R52 P2 - J1 ~
U61 VDDIO - U61 VDDIO
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 AVDDL - U61 AVDDL
U61 TXRX1P_A - J1 TRD1+
U61 LED4_1 - R49 P1
U70 OUT4 - J20 12
IC2 RX2 - J20 8
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 TXRX1P_D - J1 TRD4+
U61 TXRX1M_A - J1 TRD1-
U61 TXRX5M_A - SOM1 ETHERNET_PAIR0_N
U10 TX1 - U1 PB0
SWDIO
U61 INTRP_N - U1 PD4
U61 TXRX3M_C - J3 TRD3-
U61 TXRX1P_D - J1 TRD4+
U61 RESET_N - U1 PD3
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U70 ST3/4 - U1 PE12
U61 AVDDL - U61 DVDDL
U61 TXRX1P_A - J1 TRD1+
U61 VDDIO - U61 VDDIO
U70 OUT4 - J20 12
J2 SHIELD__5 - J1 SHIELD
U70 OUT3 - J20 11
U11 TX1 - U1 PB11
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 TXRX2P_A - J2 TRD1+
IC1 RX2 - J20 4
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U10 VDD1 - IC1 VDD1
U61 XO - X1 P2
J3 ~ - U61 LED4_0
U61 TXRX2P_D - J2 TRD4+
U61 TXRX2P_C - J2 TRD3+
U61 TXRX5M_D - SOM1 ETHERNET_PAIR3_N
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 VDDIO - U61 VDDIO
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U10 RX2 - J20 2
U61 DVDDL - U61 VDDLS
J1 ~ - U61 LED1_0
J2 SHIELD__5 - J1 SHIELD
J2 SHIELD__5 - J1 SHIELD
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 TXRX1M_B - J1 TRD2-
U20 DI_(IO0) - U1 PA7
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 TXRX2P_D - J2 TRD4+
U50 IN - D1 K
U61 TXRX2M_D - J2 TRD4-
PS1 VIN - U50 OUT
U61 TXRX2M_B - J2 TRD2-
U70 ST1/2 - U1 PE11
U11 RX1 - J20 5
R52 P2 - J1 ~
U61 TXRX1M_C - J1 TRD3-
U61 DVDDL - U61 VDDLS
U20 CLK - U1 PA5
U61 TXRX2M_A - J2 TRD1-
STM32_VCAP1
IC2 TX1 - U1 PB13
U1 NRST - U30 ~RESET
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
U61 TXRX3P_C - J3 TRD3+
U61 TXRX5M_D - SOM1 ETHERNET_PAIR3_N
U61 TXRX2M_D - J2 TRD4-
U61 IBA - R47 P1
U61 TXRX1P_C - J1 TRD3+
U70 ST3/4 - U1 PE12
U61 TXRX3P_A - J3 TRD1+
R54 P2 - J2 ~
U61 TXRX2M_B - J2 TRD2-
J1 TRCT4 - J2 TRCT1
U70 VBB - L1 2
U61 TXRX5M_A - SOM1 ETHERNET_PAIR0_N
U20 CLK - U1 PA5
U10 VDD1 - IC1 VDD1
J2 ~ - U61 LED2_0
IC1 TX2 - U1 PB10
U11 TX2 - U1 PB12
IC2 RX1 - J20 7
U61 TXRX1M_D - J1 TRD4-
U70 IN4 - U1 PE10
U11 RX2 - J20 6
J1 TRCT4 - J2 TRCT1
U61 TXRX1P_C - J1 TRD3+
U61 TXRX3P_C - J3 TRD3+
SOM1 +5V(INPUT)__5 - PS1 VOUT
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
J1 ~ - U61 LED1_0
PS1 VIN - U50 OUT
U61 TXRX3P_B - J3 TRD2+
U61 TXRX3M_C - J3 TRD3-
U61 TXRX2P_C - J2 TRD3+
U61 LED4_1 - R49 P1
U61 TXRX1M_B - J1 TRD2-
U61 TXRX5P_B - SOM1 ETHERNET_PAIR1_P
SOM1 +5V(INPUT)__5 - PS1 VOUT
U61 DVDDL - U61 VDDLS
U61 AVDDL - U61 AVDDL
U61 TXRX3P_A - J3 TRD1+
U61 VDDIO - U61 VDDIO
U10 RX2 - J20 2
J2 TRCT4 - J3 TRCT1
U1 NRST - U30 ~RESET
U61 TXRX2M_C - J2 TRD3-
SOM1 CM4_3.3V(OUTPUT)__1 - U40 PG
J3 ~ - U61 LED3_0
U11 RX1 - J20 5
U61 TXRX3M_B - J3 TRD2-
U20 DO_(IO1) - U1 PA6
U61 SDI/SDA/MDIO - SOM1 GPIO2
U61 TXRX5P_B - SOM1 ETHERNET_PAIR1_P
U61 TXRX2P_B - J2 TRD2+
U61 DVDDL - U61 DVDDL
U10 GND1 - IC1 GND1
U61 TXRX5P_D - SOM1 ETHERNET_PAIR3_P
U61 ISET - R2 P1
U70 VBB - L1 2
IC2 TX1 - U1 PB13
U1 BOOT0 - R1 P1
J3 ~ - U61 LED3_0
U61 TXRX2P_C - J2 TRD3+
IC1 RX2 - J20 4
U61 TXRX1P_A - J1 TRD1+
U61 SCL/MDC - SOM1 GPIO3
J2 TRCT4 - J3 TRCT1
U61 TXRX1P_B - J1 TRD2+
U61 TXRX2P_D - J2 TRD4+
U61 VDDIO - U61 VDDIO
U61 TXRX5M_C - SOM1 ETHERNET_PAIR2_N
U61 TXRX3P_D - J3 TRD4+
J1 ~ - U61 LED1_1
U61 TXRX3M_D - J3 TRD4-
R53 P2 - J2 ~
STM32_VCAP2
U70 IN3 - U1 PE9
U61 DVDDL - U61 VDDLS
U61 RESET_N - U1 PD3
R54 P2 - J2 ~
U10 GND2 - IC1 GND2
SOM1 GND__22 - PS1 GND
SOM1 GND__22 - PS1 GND
SOM1 GND__22 - PS1 GND
R48 P2 - R49 P2
U10 GND2 - IC1 GND2
D10 GND - D11 GND
U61 GND - U61 GND
U61 GND - U61 GND
U1 VSSA - R1 P2
D2 GND - D3 GND
D6 GND - D7 GND
D6 GND - D7 GND
U61 GND - U61 GND
U61 GND - U61 GND
C37 P2 - C38 P2
U10 GND2 - IC1 GND2
D10 GND - D11 GND
U10 GND2 - IC1 GND2
SOM1 GND__22 - PS1 GND
SOM1 GND__22 - PS1 GND
D2 GND - D3 GND
SOM1 GND__22 - PS1 GND
D6 GND - D7 GND
C37 P2 - C38 P2
SOM1 GND__22 - PS1 GND
U61 GND - U61 GND
SOM1 GND__22 - PS1 GND
U61 GND - U61 GND
U1 VSSA - R1 P2
SOM1 GND__22 - PS1 GND
D6 GND - D7 GND
C37 P2 - C38 P2
D10 GND - D11 GND
D2 GND - D3 GND
GND
GND
D10 GND - D11 GND
U61 GND - U61 GND
GND
D2 GND - D3 GND
SOM1 GND__22 - PS1 GND
U61 GND - U61 GND
U61 GND - U61 GND
R48 P2 - R49 P2
R34
Resistance
500 Ω
R8
Resistance
500 Ω
R19
Resistance
500 Ω
R36
Resistance
500 Ω
R3
Resistance
500 Ω
R27
Resistance
500 Ω
R41
Resistance
500 Ω
R21
Resistance
500 Ω
R30
Resistance
500 Ω
R7
Resistance
500 Ω
R40
Resistance
500 Ω
R17
Resistance
500 Ω
R14
Resistance
500 Ω
R4
Resistance
500 Ω
R22
Resistance
500 Ω
R33
Resistance
500 Ω
R43
Resistance
500 Ω
R11
Resistance
500 Ω
R15
Resistance
500 Ω
R20
Resistance
500 Ω
R52
Resistance
1kΩ
R1
Resistance
500 Ω
R45
Resistance
2.2kΩ
R13
Resistance
500 Ω
R37
Resistance
500 Ω
R39
Resistance
500 Ω
R18
Resistance
500 Ω
R54
Resistance
1kΩ
R44
Resistance
500 Ω
R48
Resistance
10kΩ
R25
Resistance
500 Ω
R24
Resistance
500 Ω
R23
Resistance
500 Ω
R55
Resistance
1kΩ
R46
Resistance
10kΩ
R49
Resistance
10kΩ
R12
Resistance
500 Ω
R51
Resistance
1kΩ
R38
Resistance
500 Ω
R2
Resistance
500 Ω
R16
Resistance
500 Ω
R42
Resistance
500 Ω
R29
Resistance
500 Ω
R47
Resistance
10kΩ
R32
Resistance
500 Ω
R28
Resistance
500 Ω
R53
Resistance
1kΩ
R10
Resistance
500 Ω
R6
Resistance
500 Ω
R9
Resistance
500 Ω
R5
Resistance
500 Ω
R31
Resistance
500 Ω
R35
Resistance
500 Ω
R26
Resistance
500 Ω
R50
Resistance
10kΩ
R56
Resistance
1kΩ
C23
Capacitance
Capacitance
C38
Capacitance
18pF
C37
Capacitance
18pF
C6
Capacitance
Capacitance
C30
Capacitance
Capacitance
C8
Capacitance
Capacitance
C1
Capacitance
Capacitance
C26
Capacitance
Capacitance
C22
Capacitance
Capacitance
C2
Capacitance
Capacitance
C19
Capacitance
Capacitance
C5
Capacitance
Capacitance
C15
Capacitance
Capacitance
C35
Capacitance
Capacitance
C31
Capacitance
Capacitance
C28
Capacitance
Capacitance
C27
Capacitance
Capacitance
C24
Capacitance
Capacitance
C12
Capacitance
Capacitance
C17
Capacitance
Capacitance
C11
Capacitance
Capacitance
C18
Capacitance
Capacitance
C33
Capacitance
Capacitance
C9
Capacitance
Capacitance
C14
Capacitance
Capacitance
C34
Capacitance
Capacitance
C4
Capacitance
Capacitance
C3
Capacitance
Capacitance
C29
Capacitance
Capacitance
C25
Capacitance
Capacitance
C32
Capacitance
Capacitance
C36
Capacitance
Capacitance
C21
Capacitance
Capacitance
C10
Capacitance
Capacitance
C16
Capacitance
Capacitance
C20
Capacitance
Capacitance
C13
Capacitance
Capacitance
C7
Capacitance
Capacitance
U61
D1
IC1
U10
IC2
U11
SOM1
S3
X1
S2
DS1
Not Recommended for New Designs
S1
S4
SW1
S5
U41
U40
U70
L2
Inductance
Inductance
L1

Refine this doc
Ask about this doc
MESBox Controller Design Package
Architecture
  • 24 V DC industrial input with reverse-polarity ideal-diode protection, input TVS surge clamp, common-mode EMI choke, separated chassis/shield reference, and logic/field power domains.
  • Embedded Linux SOM: Raspberry Pi Compute Module 4-class module for MES gateway, UI, logging, and network services.
  • Real-time controller: STM32F407VGT6 for deterministic I/O, counters, menu buttons, output control, watchdog heartbeat, and sensor expansion.
  • HMI: 4.3 inch EA-EDIPTFT43-A TFT module, six physical momentary menu buttons.
  • Networking: three shielded RJ45 MagJack Ethernet ports; each differential pair should use low-capacitance ESD array and controlled-impedance routing.
  • Digital inputs: two STISO621WTR quad isolated digital-input interface ICs for eight isolated 24 V inputs.
  • Counter inputs: two 24 V inputs routed through the same isolated/conditioned front end to STM32 timer input-capture pins; design target 10 kHz max.
  • Digital outputs: four protected 24 V low-side transistor-output channels are specified as discrete/protected MOSFET channels; exact 60 V MOSFET library part was not available, so the schematic records the architecture and the BOM notes call out required MPN selection.
  • Offline memory: W25Q128JVSIM 128 Mbit SPI NOR flash.
  • Watchdog: TPS3828-33DBVR supervisor/watchdog.
Power Tree

Diagram


24 V DC Input Reverse polarity ideal diode controller LTC4359 SMBJ24A input TVS to chassis/return Common-mode EMI choke ACM7060 24V_PROTECTED 5 V buck module D24V50F5 5V_LOGIC: display, USB/aux, regulator input 3.3 V buck LMR33630 3V3_LOGIC: CM4 IO, STM32, SPI flash, watchdog, Ethernet support 24V_OUT_FIELD: transistor output field supply 24 V isolated input field side
Power Budget Assumptions

Table


RailLoadsTypicalPeak / Design
3V3_LOGICCM4 IO/support, STM32F407, SPI NOR, watchdog, STISO logic, Ethernet support600 mA1.25 A
5V_LOGIC3.3 V buck input, TFT module, auxiliary logic1.2 A2.2 A
24V_OUT_FIELD4 transistor outputsapplication-dependent0.5 A/channel nominal target
24V_INall rails reflected through buck efficiency~0.35 A plus outputs~0.7 A logic-only; add output load current
Use a minimum 2 A 24 V supply for logic/display-only prototypes and 4 A+ if all outputs can source/sink 0.5 A simultaneously.
Resistor Calculations
24 V isolated digital input current limiting
For a 24 V PLC input LED/interface current target of 2.5 mA and about 1.3 V LED/input drop:
R = (24 V - 1.3 V) / 2.5 mA = 9.08 kΩ
Recommended: 9.1 kΩ, 0.25 W minimum. Power at 24 V: P = I²R = 0.0025² × 9100 = 57 mW; with 30 V field transient/nominal high: (30 - 1.3)^2 / 9100 = 91 mW. Use 1206 or split into two series resistors for creepage and surge robustness.
Button pull-ups / debounce
Use 10 kΩ pull-up to 3V3 and 100 nF to ground per button for hardware debounce if firmware debounce alone is not desired. RC = 1 ms.
STM32 BOOT0 / reset
BOOT0: 10 kΩ pull-down to GND. NRST: 10 kΩ pull-up to 3V3 plus 100 nF to GND.
MOSFET output gates
Use 33–100 Ω series gate resistor and 100 kΩ gate pulldown per channel. Add per-output TVS/clamp and flyback path for inductive loads.
Ethernet shield/chassis bleed
Use 1 MΩ parallel with 1 nF–4.7 nF safety/EMC capacitor from chassis/shield to logic ground at a single controlled point; validate against product safety requirements.
Protection Component Recommendations
  • Reverse polarity: LTC4359 with external N-MOSFET rated at least 60 V VDS, low RDS(on), and current above total system plus surge margin.
  • Input surge: SMBJ24A currently included. If the 24 V rail can continuously exceed 24 V tolerance or has 30–36 V nominal transients, replace with SMBJ33A/SMBJ33CA class.
  • EMI: ACM7060 common-mode choke followed by bulk electrolytic and ceramics close to the buck input.
  • Ethernet: USBLC6-2SC6 dual-line low-cap ESD arrays; one per differential pair, placed connector-side.
  • Field I/O: per-channel series impedance, TVS/clamp to FIELD_COM, and isolation barrier spacing around STISO input circuits.
  • Outputs: prefer a true industrial high-side/low-side protected switch such as TI TPS27S/TPS4H family, Infineon PROFET, or ST VN/VND family if available; otherwise use 60–100 V logic MOSFET plus fuse/PTC/current-limit and inductive clamp.
Preliminary BOM

Table


FunctionDesignator(s)Selected Part
Linux SOMSOM1Raspberry Pi Compute Module 4
Real-time MCUU1STM32F407VGT6
DisplayDS1EA-EDIPTFT43-A 4.3 inch TFT module
Ethernet portsJ1-J3RJMG201826230ER MagJack
Ethernet ESDD10-D21USBLC6-2SC6
Isolated 24 V inputsU10-U11STISO621WTR
Offline memoryU20W25Q128JVSIM
WatchdogU30TPS3828-33DBVR
24 V to 5 VPS1Pololu D24V50F5 class buck module
5 V to 3.3 VU40LMR33630BDDAR
Reverse polarityU50LTC4359CDCB#TRMPBF plus external MOSFET
Input TVSD1SMBJ24A
EMI chokeL1ACM7060-701-2PL-TL01
ExpansionJ202x20 2.54 mm header
Menu buttonsSW1-SW6B3FS-1002P
PassivesR*, C*, L2Generic resistors/capacitors/inductor; assign exact values during detailed pin-level implementation
PCB Layout Constraints
  • Use at least 4 layers: signal, solid GND, power, signal. Prefer 6 layers if routing three Ethernet ports plus CM4 interfaces is dense.
  • Keep 24 V field/output section physically separated from 3.3 V logic. Maintain isolation/creepage under and around STISO devices.
  • Put input connector, reverse protection, TVS, common-mode choke, and buck input capacitors at the board edge in that order.
  • Route Ethernet differential pairs as controlled impedance; keep pair skew low, avoid stubs, and place ESD arrays within a few mm of RJ45 connectors.
  • Tie RJ45 shields to CHASSIS near the connector, not directly into digital ground return paths.
  • Place STM32 decoupling caps immediately at each VDD/VDDA pin; place VCAP capacitors per STM32 datasheet.
  • Put SPI NOR close to STM32/SOM host with short SPI traces and series damping footprints if needed.
  • Keep TFT/display cable away from Ethernet magnetics and 24 V output switching nodes.
  • Use wide copper pours for 24V_OUT_FIELD and output return currents; route field current away from logic ground.
EMC Reduction Notes
  • Use a metal/enclosure chassis strategy with a single controlled logic-ground/chassis reference.
  • Add common-mode filtering at power entry and optional common-mode chokes on noisy field I/O cables.
  • Keep fast output edges controlled with gate resistors and snubbers/clamps for inductive loads.
  • Avoid plane splits under Ethernet and high-speed logic traces.
  • Add stitching vias around Ethernet connectors, board edges, and chassis/shield zones.
  • Provide test points for 24V_IN_RAW, 24V_PROTECTED, 5V_LOGIC, 3V3_LOGIC, FIELD_COM, NRST, BOOT0, SWDIO, SWCLK, and watchdog reset.
Open Engineering Items
  • Confirm exact output switch topology/MPN: library did not contain a robust 60 V protected transistor-output driver.
  • Confirm Ethernet architecture: CM4 has one native Ethernet MAC; three RJ45 ports require a switch IC or USB/PCIe Ethernet expansion not yet detailed in the schematic.
  • Confirm CM4 carrier-board requirements from Raspberry Pi CM4 datasheet, including power sequencing and Ethernet PHY/switch connections.
  • Assign exact STM32 GPIO pins and complete detailed pin-level wiring after datasheet pin mapping.
  • Select mechanical/display connector details for the final enclosure and front panel.
  • Architecture

  • Power Tree

  • Power Budget Assumptions

  • Resistor Calculations

  • 24 V isolated digital input current limiting

  • Button pull-ups / debounce

  • STM32 BOOT0 / reset

  • MOSFET output gates

  • Ethernet shield/chassis bleed

  • Protection Component Recommendations

  • Preliminary BOM

  • PCB Layout Constraints

  • EMC Reduction Notes

  • Open Engineering Items

Documents

  • MESBox Controller Design Package

  • Firmware Starter — STM32F407 + Linux SOM MESBox

  • Board Bring-Up Plan — Industrial MESBox Controller

  • Preliminary FMEA — Industrial MESBox Controller

  • Ethernet Layout Constraints

Assets

Assets are files uploaded to this project which can be used in various ways.

Industrial MESBox Controller thumbnail
Industrial 24 V DC MESBox controller with embedded Linux SOM, STM32 real-time I/O, triple RJ45 Ethernet, TFT display, isolated inputs, protected transistor outputs, offline memory, surge/reverse-polarity protection, and EMC-focused layout constraints.

Properties

Properties describe core aspects of the project.

Pricing & Availability

Distributor

Qty 1

Arrow

$49.79–$62.01

Digi-Key

$382.94–$384.30

HQonline

$7.57–$8.74

LCSC

$408.25–$409.74

Mouser

$431.17

TME

$15.69

Verical

$48.49–$123.31

Controls