abse/gameboy-advance
Validates and exports a four-layer Game Boy–style PCB assembly with RP2350 MCU, 32MB flash, USB-C, LCD and speaker connectors, battery buck-boost power, buttons, and verified routing, connectivity, clearances, CAD models, and physical DRC.
- Version
- 0.0.39
- License
- unset
- Stars
- 0
imports/GBA_SHOULDER_B3F3152.tsx
import type { ChipProps } from "@tscircuit/props"
const pinLabels = {
pin1: ["pin1"],
pin2: ["pin2"],
pin3: ["pin3"],
pin4: ["pin4"]
} as const
export const GBA_SHOULDER_B3F3152 = (props: ChipProps<typeof pinLabels>) => {
return (
<chip
pinLabels={pinLabels}
symbol={
<symbol>
<schematictext text="{NAME}" schY={0.85} fontSize={0.16} />
<port name="pin4" pinNumber={4} aliases={["4"]} direction="right" schX={0.4} schY={-0.2} schStemLength={0.2} />
<port name="pin3" pinNumber={3} aliases={["3"]} direction="left" schX={-0.4} schY={-0.2} schStemLength={0.2} />
<port name="pin2" pinNumber={2} aliases={["2"]} direction="right" schX={0.4} schY={0.2} schStemLength={0.2} />
<port name="pin1" pinNumber={1} aliases={["1"]} direction="left" schX={-0.4} schY={0.2} schStemLength={0.2} />
<schematicpath points={[{"x":-0.04,"y":0.08},{"x":-0.08,"y":-0.08}]} strokeColor="#880000" />
<schematicpath points={[{"x":0.2,"y":-0.2},{"x":-0.2,"y":-0.2}]} strokeColor="#880000" />
<schematicpath points={[{"x":0,"y":-0.115},{"x":0,"y":-0.195}]} strokeColor="#880000" />
<schematiccircle center={{ x: 0, y: -0.075 }} radius={0.03} strokeWidth={0.02} color="#880000" />
<schematicpath points={[{"x":-0.2,"y":0.2},{"x":0.2,"y":0.2}]} strokeColor="#880000" />
<schematicpath points={[{"x":0,"y":0.12},{"x":0,"y":0.2}]} strokeColor="#880000" />
<schematiccircle center={{ x: 0, y: 0.08 }} radius={0.03} strokeWidth={0.02} color="#880000" />
</symbol>
}
// Omron drawing page 5: two 1 mm electrical holes, two 1.5 mm case-ground stakes.
// Preserve pin1/pin4 switch terminals and pin2/pin3 unconnected case stakes.
// Supplier STEP/OBJ is imported, not constructed for this project.
supplierPartNumbers={{jlcpcb:["C231320"]}}
manufacturerPartNumber="B3F-3152"
footprint={<footprint insertionDirection="from_bottom">
<platedhole portHints={["pin1"]} pcbX={-2.25} pcbY={0} outerDiameter={1.6} holeDiameter={1} shape="circle" />
<platedhole portHints={["pin4"]} pcbX={2.25} pcbY={0} outerDiameter={1.6} holeDiameter={1} shape="circle" />
<platedhole portHints={["pin2"]} pcbX={3.5} pcbY={2.5} outerDiameter={2.1} holeDiameter={1.5} shape="circle" />
<platedhole portHints={["pin3"]} pcbX={-3.5} pcbY={2.5} outerDiameter={2.1} holeDiameter={1.5} shape="circle" />
<courtyardoutline outline={[{x:-4.65,y:-6.55},{x:4.65,y:-6.55},{x:4.65,y:4.4},{x:-4.65,y:4.4}]} />
</footprint>}
cadModel={<cadmodel
modelUrl="https://modelcdn.tscircuit.com/easyeda_models/assets/C231320.obj"
stepUrl="https://modelcdn.tscircuit.com/easyeda_models/assets/C231320.step"
pcbRotationOffset={0}
modelOriginPosition={{x:0,y:0,z:0}}
// Footprint bounds centre is1.375 mm inward of the authored pin origin.
// CadModel positionOffset is applied in board coordinates: restore the
// supplier model's pin origin at pcbY39.6 for both180-degree switches.
positionOffset={{x:0,y:1.375,z:0}}
/>}
{...props}
/>
)
}