techmannih/nema34-mounted-stepper-controller

A 48 V USB‑C PD 3.1 EPR NEMA‑34 stepper controller PCB combining STM32/TMC5160 control, external MOSFET motor bridges, protected power and regenerative braking, USB data, telemetry, diagnostics, status LEDs, and buzzer alarms.

Version
0.3.92
License
unset
Stars
1

imports/BSS123LT1G.tsx

import type { MosfetProps } from "@tscircuit/props"

export const BSS123LT1G = (props: Omit<MosfetProps, "channelType" | "mosfetMode"> & {
  referenceOffset?: { x: number; y: number }
}) => {
  const { name = "Q1", referenceOffset = { x: 0, y: 2.7 }, ...restProps } = props
  return (
    <mosfet
      name={name}
      channelType="n"
      mosfetMode="enhancement"
      symbol={
        <symbol>
          <schematictext text={name} schX={0} schY={0.7} fontSize={0.22} color="#006464" anchor="bottom_center" />
          <schematicpath points={[{ x: 0, y: 0 }, { x: 0.381, y: -0.127 }, { x: 0.381, y: 0.127 }, { x: 0, y: 0 }]} strokeWidth={0.035} strokeColor="#880000" isFilled fillColor="#880000" />
          <schematicpath points={[{ x: 1.27, y: 0.127 }, { x: 1.0795, y: -0.1905 }, { x: 1.4605, y: -0.1905 }, { x: 1.27, y: 0.127 }]} strokeWidth={0.035} strokeColor="#880000" isFilled fillColor="#880000" />
          <schematicpath points={[{ x: 0, y: 0.4445 }, { x: 0.635, y: 0.4445 }, { x: 0.635, y: 0.635 }, { x: 1.27, y: 0.635 }, { x: 1.27, y: 0.127 }]} strokeWidth={0.035} strokeColor="#880000" />
          <schematicpath points={[{ x: 0, y: 0 }, { x: 0.635, y: 0 }, { x: 0.635, y: -0.635 }, { x: 1.27, y: -0.635 }, { x: 1.27, y: -0.1905 }]} strokeWidth={0.035} strokeColor="#880000" />
          <schematicpath points={[{ x: 0.635, y: -0.4445 }, { x: 0, y: -0.4445 }]} strokeWidth={0.035} strokeColor="#880000" />
          <schematicpath points={[{ x: -0.127, y: 0.5715 }, { x: -0.127, y: -0.5715 }]} strokeWidth={0.035} strokeColor="#880000" />
          <schematicpath points={[{ x: 0, y: 0.5715 }, { x: 0, y: 0.3175 }]} strokeWidth={0.035} strokeColor="#880000" />
          <schematicpath points={[{ x: 0, y: -0.127 }, { x: 0, y: 0.127 }]} strokeWidth={0.035} strokeColor="#880000" />
          <schematicpath points={[{ x: 0, y: -0.5715 }, { x: 0, y: -0.3175 }]} strokeWidth={0.035} strokeColor="#880000" />
          <schematicpath points={[{ x: -0.635, y: 0 }, { x: -0.127, y: 0 }]} strokeWidth={0.035} strokeColor="#880000" />
          <schematicpath points={[{ x: 1.524, y: 0.127 }, { x: 1.397, y: 0.127 }, { x: 1.143, y: 0.127 }, { x: 1.016, y: 0.127 }]} strokeWidth={0.035} strokeColor="#880000" />
          <port name="pin3" pinNumber={3} aliases={["D", "drain"]} direction="up" schX={0.635} schY={1.27} schStemLength={0.635} />
          <port name="pin1" pinNumber={1} aliases={["G", "gate"]} direction="left" schX={-1.27} schY={0} schStemLength={0.635} />
          <port name="pin2" pinNumber={2} aliases={["S", "source"]} direction="down" schX={0.635} schY={-1.27} schStemLength={0.635} />
        </symbol>
      }
      supplierPartNumbers={{
  "jlcpcb": [
    "C78755"
  ]
}}
      manufacturerPartNumber="BSS123LT1G"
      footprint={<footprint>
        <smtpad portHints={["pin2"]} pcbX="1.149985mm" pcbY="0.94996mm" width="0.999998mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin3"]} pcbX="-1.149985mm" pcbY="0mm" width="0.999998mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin1"]} pcbX="1.149985mm" pcbY="-0.94996mm" width="0.999998mm" height="0.7999984mm" shape="rect" />
<fabricationnotepath route={[{"x":-0.6999731999999881,"y":0.6359398000000027},{"x":-0.6999731999999881,"y":1.4999461999999966}]} />
<fabricationnotepath route={[{"x":-0.6999731999999881,"y":1.4999461999999966},{"x":0.30005020000000115,"y":1.4999461999999966}]} />
<fabricationnotepath route={[{"x":0.7000239999999991,"y":-0.31402020000000164},{"x":0.7000239999999991,"y":0.31391859999999383}]} />
<fabricationnotepath route={[{"x":-0.6999731999999881,"y":-1.5000478000000044},{"x":-0.6999731999999881,"y":-0.6360414000000105}]} />
<fabricationnotepath route={[{"x":-0.6999731999999881,"y":-1.5000478000000044},{"x":0.30005020000000115,"y":-1.5000478000000044}]} />
<courtyardoutline outline={[{"x":-1.8999840000000034,"y":1.6999589999999927},{"x":1.8999840000000034,"y":1.6999589999999927},{"x":1.8999840000000034,"y":-1.700035200000002},{"x":-1.8999840000000034,"y":-1.700035200000002},{"x":-1.8999840000000034,"y":1.6999589999999927}]} />
      <silkscreentext text="{NAME}" pcbX={referenceOffset.x} pcbY={referenceOffset.y} anchorAlignment="center" />
      </footprint>}
      cadModel={{
        objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C78755.obj?uuid=d777607a152f4f3aac9bb0d0c14ed6fd",
        stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C78755.step?uuid=d777607a152f4f3aac9bb0d0c14ed6fd",
        pcbRotationOffset: 180,
        modelOriginPosition: { x: 0.00003809999999759839, y: -0.00003810000001180924, z: 0.050795 },
      }}
      {...restProps}
    />
  )
}