mohan-bee/stm32-mini-dev-board-v1-a-2
A diagnostic STM32G031 development board with USB‑C 3.3V power, SWD/GPIO/UART/SPI headers, reset, potentiometer, buttons, LEDs, buzzer, I²C EEPROM, MCP23008 GPIO expansion, filtered inputs, and multiple I²C sensor ports.
- Version
- 1.0.1
- License
- unset
- Stars
- 0
stress-v5.circuit.tsx
import { Fragment } from "react"
import StressBoard from "./stress.circuit"
// Diagnostic expansion, not a fabrication-approved design.
// Configure expander pins as inputs when using the buttons; LED loads are shared.
export default function StressV5Board() {
const original = StressBoard()
return (
<board {...original.props} title="STM32 Expansion Lab V5 — diagnostic" width="130mm" height="95mm" schLayout={{ layoutMode: "relative" }}>
{/* Sheet dimensions are paper millimetres, not schematic coordinate units. */}
<schematicsheet name="main" displayName="STM32 expansion lab — V5" sheetWidth="700mm" sheetHeight="700mm">
{original.props.children}
<schematicsection name="buttons" displayName="FILTERED BUTTON INPUTS — SHARED EXPANDER GPIO" />
{Array.from({ length: 8 }, (_, channel) => {
const pcbY = -35 + channel * 10
const schX = -28 + channel * 7
const pullup = `R${27 + channel * 2}`
const series = `R${28 + channel * 2}`
const capacitor = `C${18 + channel}`
const button = `SW${channel + 1}`
return (
<Fragment key={channel}>
<resistor name={pullup} resistance="10k" footprint="0603"
schSectionName="buttons" schX={schX} schY={-50} schRotation={90}
pcbX={-43} pcbY={pcbY + 2} />
<resistor name={series} resistance="1k" footprint="0603"
schSectionName="buttons" schX={schX + 2} schY={-52}
pcbX={-48} pcbY={pcbY} />
<capacitor name={capacitor} capacitance="100nF" footprint="0603"
schSectionName="buttons" schX={schX} schY={-55} schRotation={90}
pcbX={-43} pcbY={pcbY - 2} />
<pushbutton name={button} footprint="pushbutton_4pin"
schSectionName="buttons" schX={schX + 4} schY={-55}
pcbX={-56} pcbY={pcbY} />
<trace from={`.${pullup} > .pin1`} to="net.VCC_3V3" thickness="0.4mm" />
<trace from={`.${pullup} > .pin2`} to={`net.EXP_GP${channel}`} />
<trace from={`.${series} > .pin1`} to={`net.EXP_GP${channel}`} />
<trace from={`.${series} > .pin2`} to={`.${button} > .pin1`} />
<trace from={`.${button} > .pin2`} to="net.GND" thickness="0.3mm" />
<trace from={`.${capacitor} > .pin1`} to={`net.EXP_GP${channel}`} />
<trace from={`.${capacitor} > .pin2`} to="net.GND" thickness="0.3mm" />
</Fragment>
)
})}
</schematicsheet>
</board>
)
}