imrishabh18/nema-23-stepper-controller
A 57 mm four-layer RP2040 NEMA23 stepper-controller PCB with USB‑C/USB‑PD power input, protected motor rail, DRV8452 dual-winding driver, bidirectional current sensing, temperature/enable interlock, optional magnetic encoder, RGB LED and buzzer status indicators, and motor/test connectors.
- Version
- 1.2.3
- License
- unset
- Stars
- 0
imports/DRV8452DDWR.tsx
// EasyEDA C5624514 lands rotated +90°; retained 18 GND thermal vias and conservative courtyard.
import type { ChipProps } from "@tscircuit/props";
const pinLabels = {
pin1: ["VCP"],
pin2: ["VM1"],
pin3: ["PGNDA1"],
pin4: ["AOUT11"],
pin5: ["AOUT12"],
pin6: ["AOUT13"],
pin7: ["AOUT21"],
pin8: ["AOUT22"],
pin9: ["AOUT23"],
pin10: ["PGNDA2"],
pin11: ["VM2"],
pin12: ["VM3"],
pin13: ["PGNDB1"],
pin14: ["BOUT21"],
pin15: ["BOUT22"],
pin16: ["BOUT23"],
pin17: ["BOUT11"],
pin18: ["BOUT12"],
pin19: ["BOUT13"],
pin20: ["PGNDB2"],
pin21: ["VM4"],
pin22: ["GND1"],
pin23: ["GND2"],
pin24: ["DVDD"],
pin25: ["VCC"],
pin26: ["nFAULT"],
pin27: ["nHOME"],
pin28: ["MODE"],
pin29: ["RSVD1"],
pin30: ["RSVD2"],
pin31: ["RSVD3"],
pin32: ["RSVD4"],
pin33: ["VREF"],
pin34: ["nSCS"],
pin35: ["RSVD_TOFF"],
pin36: ["SDO"],
pin37: ["SDI"],
pin38: ["SCLK"],
pin39: ["STEP"],
pin40: ["DIR"],
pin41: ["ENABLE"],
pin42: ["nSLEEP"],
pin43: ["CPL"],
pin44: ["CPH"],
pin45: ["EP"]
} as const;
const pinAttributes = {
pin22: { requiresGround: true },
pin23: { requiresGround: true },
pin25: { requiresPower: true }
} as const;
export const DRV8452DDWR = (props: ChipProps<typeof pinLabels>) => {
return (<chip schMarginX={0.35} schMarginY={0.7} pinLabels={pinLabels} pinAttributes={pinAttributes} supplierPartNumbers={{
"jlcpcb": [
"C5624514"
]
}} manufacturerPartNumber="DRV8452DDWR" footprint={<footprint>
<smtpad portHints={["pin1"]} pcbX="-6.6675mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin2"]} pcbX="-6.0325mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin3"]} pcbX="-5.3975mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin4"]} pcbX="-4.7625mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin5"]} pcbX="-4.1275mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin6"]} pcbX="-3.4925mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin7"]} pcbX="-2.8575mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin8"]} pcbX="-2.2225mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin9"]} pcbX="-1.5875mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin10"]} pcbX="-0.9525mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin11"]} pcbX="-0.3175mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin12"]} pcbX="0.3175mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin13"]} pcbX="0.9525mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin14"]} pcbX="1.5875mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin15"]} pcbX="2.2225mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin16"]} pcbX="2.8575mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin17"]} pcbX="3.4925mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin18"]} pcbX="4.1275mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin19"]} pcbX="4.7625mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin20"]} pcbX="5.3975mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin21"]} pcbX="6.0325mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin22"]} pcbX="6.6675mm" pcbY="-3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin23"]} pcbX="6.6675mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin24"]} pcbX="6.0325mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin25"]} pcbX="5.3975mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin26"]} pcbX="4.7625mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin27"]} pcbX="4.1275mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin28"]} pcbX="3.4925mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin29"]} pcbX="2.8575mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin30"]} pcbX="2.2225mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin31"]} pcbX="1.5875mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin32"]} pcbX="0.9525mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin33"]} pcbX="0.3175mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin34"]} pcbX="-0.3175mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin35"]} pcbX="-0.9525mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin36"]} pcbX="-1.5875mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin37"]} pcbX="-2.2225mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin38"]} pcbX="-2.8575mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin39"]} pcbX="-3.4925mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin40"]} pcbX="-4.1275mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin41"]} pcbX="-4.7625mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin42"]} pcbX="-5.3975mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin43"]} pcbX="-6.0325mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin44"]} pcbX="-6.6675mm" pcbY="3.63753mm" width="0.308mm" height="1.575mm" shape="rect" />
<smtpad portHints={["pin45"]} pcbX="0mm" pcbY="0mm" width="7.59998mm" height="3.39999mm" shape="rect" />
<via connectsTo="net.GND" pcbX="-2.499868mm" pcbY="0.999998mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="-1.49987mm" pcbY="0.999998mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="-0.499872mm" pcbY="0.999998mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="0.500126mm" pcbY="0.999998mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="1.500124mm" pcbY="0.999998mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="2.500122mm" pcbY="0.999998mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="2.500122mm" pcbY="0mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="1.500124mm" pcbY="0mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="0.500126mm" pcbY="0mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="-0.499872mm" pcbY="0mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="-1.49987mm" pcbY="0mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="-2.499868mm" pcbY="0mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="-2.499868mm" pcbY="-0.999998mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="-1.49987mm" pcbY="-0.999998mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="-0.499872mm" pcbY="-0.999998mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="0.500126mm" pcbY="-0.999998mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="1.500124mm" pcbY="-0.999998mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<via connectsTo="net.GND" pcbX="2.500122mm" pcbY="-0.999998mm" outerDiameter="0.6096mm" holeDiameter="0.3048mm" layers={["top", "bottom"]}/>
<silkscreenpath route={[{ "x": -7.076211400000034, "y": -2.621406999999863 }, { "x": -7.076211400000034, "y": 2.6214069999999765 }, { "x": 7.07621139999992, "y": 2.6214069999999765 }, { "x": 7.07621139999992, "y": -2.621406999999863 }, { "x": -7.076211400000034, "y": -2.621406999999863 }]}/>
<silkscreencircle pcbX="-6.6675mm" pcbY="-1.868932mm" radius="0.150114mm"/>
<silkscreencircle pcbX="-7.273798mm" pcbY="-3.714496mm" radius="0.150114mm"/>
<silkscreentext text="{NAME}" pcbX="-0.1651mm" pcbY="5.4196mm" anchorAlignment="center" fontSize="1mm"/>
<courtyardoutline outline={[{ "x": -7.6667999999999665, "y": 4.6696000000000595 }, { "x": 7.3366000000000895, "y": 4.6696000000000595 }, { "x": 7.3366000000000895, "y": -4.847399999999993 }, { "x": -7.6667999999999665, "y": -4.847399999999993 }, { "x": -7.6667999999999665, "y": 4.6696000000000595 }]}/>
</footprint>} cadModel={{
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C5624514.obj?uuid=8e3f11a5fbfc4e5c87265b24b564bc34",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C5624514.step?uuid=8e3f11a5fbfc4e5c87265b24b564bc34",
pcbRotationOffset: 90,
modelOriginPosition: { x: 0, y: 0, z: 0 },
}} {...props}/>);
};