ShiboSoftwareDev/nema8-20mm-usbc-pd-controller
A compact four-layer USB‑C PD–powered NEMA8 stepper controller combining a CH32X035 MCU, TMC2209 driver, 3.3 V regulation, USB data/ESD protection, current-sense resistors, protection diodes, and motor connector.
- Version
- 1.0.11
- License
- unset
- Stars
- 0
imports/CH32X035F8U6.tsx
import type { ChipProps } from "@tscircuit/props"
const pinLabels = {
pin1: ["VDD"],
pin2: ["PA0", "STEP_OUT"],
pin3: ["PA1", "DIR_OUT"],
pin4: ["PA2", "ENABLE_OUT"],
pin5: ["PA3", "UART1"],
pin6: ["PA4", "STDBY_OUT"],
pin7: ["PA5", "DIAG_IN"],
pin8: ["PA6"],
pin9: ["PA7", "VBUS_ADC"],
pin10: ["PB0"],
pin11: ["PB1"],
pin12: ["PB3"],
pin13: ["PB11"],
pin14: ["PC18", "DIO"],
pin15: ["PB12"],
pin16: ["PC19", "DCK"],
pin17: ["PC16", "USB_DM"],
pin18: ["PC17", "USB_DP"],
pin19: ["PC14", "CC1"],
pin20: ["PC15", "CC2"],
pin21: ["GND"]
} as const
const pinAttributes = {
pin1: {requiresPower: true},
pin21: {requiresGround: true}
} as const
const footprinterPinLabels = {
...pinLabels,
"pin21": [...pinLabels["pin21"], "thermalpad"],
} as const
export const CH32X035F8U6 = (props: ChipProps<typeof pinLabels>) => {
return (
<chip
pinLabels={footprinterPinLabels}
pinAttributes={pinAttributes}
supplierPartNumbers={{
"jlcpcb": [
"C42442062"
]
}}
manufacturerPartNumber="CH32X035F8U6"
footprint="qfn20_thermalpad1.7mmx1.7mm_p0.4mm_h4mm_pw0.2mm_pl0.8mm"
cadModel={{
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C42442062.obj?uuid=71760926877f42c6b0f5954e672bfe89",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C42442062.step?uuid=71760926877f42c6b0f5954e672bfe89",
pcbRotationOffset: 270,
modelOriginPosition: { x: 0, y: 0, z: 0 },
}}
{...props}
/>
)
}