imrishabh18/pd-stepper
This circuit features an ESP32-S23 microcontroller connected to a TMC2209 stepper motor driver, capacitors, resistors, solder jumpers, and a potentiometer, forming a hardware control system for precise motor operation.
- Version
- 1.0.0
- License
- unset
- Stars
- 0
components/stepper-driver.tsx
import { TMC2209_LA_T } from "imports/TMC2209_LA_T"
import { sel } from "tscircuit"
export const StepperDriver = () => {
return (
<group name="StepperDriver">
<schematictext text="Stepper Driver" fontSize={0.4} />
<TMC2209_LA_T
name="U1"
schWidth={2.2}
schHeight={5.2}
schPinStyle={{
N_EN: {
marginBottom: "0.3",
},
CLK: {
marginBottom: "0.3",
marginTop: "0.3",
},
CPO: {
marginBottom: "0.3",
},
VCP: {
marginBottom: "0.3",
},
VREF: {
marginTop: "0.3",
},
INDEX: {
marginBottom: "0.3",
marginTop: "0.3",
},
BRA: {
marginTop: "0.3",
},
BRB: {
marginBottom: "0.3",
},
}}
schPinArrangement={{
leftSide: [
"pin2",
"pin16",
"pin19",
"pin9",
"pin10",
"pin13",
"pin5",
"pin4",
"pin7",
"pin14",
"pin17",
"pin20",
],
rightSide: [
"pin15",
"pin22",
"pin28",
"pin8",
"pin6",
"pin11",
"pin12",
"pin24",
"pin26",
"pin21",
"pin1",
"pin23",
"pin27",
"pin25",
"pin29",
"pin18",
"pin3",
],
}}
connections={{
EXP: sel.net.GND,
GND1: sel.net.GND,
GND2: sel.net.GND,
CLK: sel.net.GND,
VS2: sel.U1.VS1,
VOUT: "net.VCC_5",
}}
/>
<chip
name="P1"
schWidth={0.6}
schPinArrangement={{
leftSide: ["pin1", "pin2", "pin3", "pin4"],
}}
pinLabels={{
pin1: "A1",
pin2: "B1",
pin3: "A2",
pin4: "B2",
}}
connections={{
pin1: sel.U1.OA1,
pin2: sel.U1.OB1,
pin3: sel.U1.OA2,
pin4: sel.U1.OB2,
}}
/>
<capacitor
name="C3"
capacitance="0.1uF"
footprint="0402"
connections={{
pin1: "net.GND",
pin2: sel.U1.VCC_IO,
}}
/>
<group>
<capacitor
name="C6"
capacitance="0.1uF"
footprint="0402"
connections={{
pin2: "net.GND",
pin1: sel.U1.VS1,
}}
/>
<capacitor
name="C7"
capacitance="0.1uF"
footprint="0402"
connections={{
pin2: "net.GND",
pin1: sel.U1.VS1,
}}
/>
<capacitor
name="C8"
capacitance="0.1uF"
footprint="0402"
connections={{
pin2: "net.GND",
pin1: sel.U1.VS1,
}}
/>
</group>
<capacitor
name="C9"
capacitance="0.1uF"
footprint="0402"
connections={{
pin1: "net.GND",
pin2: "net.VCC_5",
}}
/>
<capacitor
name="C10"
capacitance="0.1uF"
footprint="0402"
connections={{
pin1: sel.U1.VCP,
pin2: sel.U1.VS1,
}}
/>
<capacitor
name="C12"
capacitance="22nF"
footprint="0402"
connections={{
pin1: sel.U1.CPI,
pin2: sel.U1.CPO,
}}
/>
<resistor
name="R2"
resistance="100ohm"
footprint="0402"
connections={{
pin1: "net.VCC_3",
pin2: sel.U1.N_EN,
}}
/>
<resistor
name="R6"
resistance="100ohm"
footprint="0402"
connections={{
pin1: "net.GND",
pin2: sel.U1.BRA,
}}
/>
<resistor
name="R7"
resistance="100ohm"
footprint="0402"
connections={{
pin1: "net.GND",
pin2: sel.U1.BRB,
}}
/>
<resistor
name="R8"
resistance="100ohm"
footprint="0402"
connections={{
pin1: "net.VCC_5",
pin2: sel.R10.pin1,
}}
/>
<solderjumper
name="J1"
pinCount={3}
connections={{
pin1: "net.VCC_3",
pin2: sel.U1.MS1_AD0,
pin3: "net.GND",
}}
/>
<solderjumper
name="J2"
pinCount={3}
connections={{
pin1: "net.VCC_3",
pin2: sel.U1.MS2_AD1,
pin3: "net.GND",
}}
/>
<solderjumper
name="J3"
pinCount={3}
connections={{
pin1: "net.VCC_3",
pin2: sel.U1.SPREAD,
pin3: "net.GND",
}}
/>
<potentiometer
name="R10"
maxResistance="20kohm"
symbolName="potentiometer3_right"
footprint="0402"
connections={{
pin2: sel.U1.VREF,
pin3: "net.GND",
}}
/>
</group>
)
}