AnasSarkiz/NEMA14_RP2040

A NEMA stepper motor assembly concept with a controller board, proposed M3 screws and spacers, four motor leads with insulated splices, and a JST 4-pin connector harness.

Version
1.12.2
License
ISC
Stars
0

src/supplier-parts.tsx

import { AS5600_ASOM } from "../imports/supplier/AS5600_ASOM/AS5600_ASOM"
import { StandardUsbConnector, SmtMotorConnector } from "./reference-connectors"
import { PMEG6020ELRX } from "../imports/supplier/PMEG6020ELRX/PMEG6020ELRX"
import { CL05B104KB5NNNC } from "../imports/supplier/CL05B104KB5NNNC/CL05B104KB5NNNC"
import { XL_1608SURC_06 } from "../imports/supplier/XL_1608SURC_06/XL_1608SURC_06"
import { A_0402WGF3300TCE } from "../imports/supplier/A_0402WGF3300TCE/A_0402WGF3300TCE"
import { LTST_C19HE1WT } from "../imports/supplier/LTST_C19HE1WT/LTST_C19HE1WT"
import { DTC114EU3HZGT106 } from "../imports/supplier/DTC114EU3HZGT106/DTC114EU3HZGT106"
import { TMP102AIDRLR } from "../imports/supplier/TMP102AIDRLR/TMP102AIDRLR"
import { A_0402WGF4701TCE } from "../imports/supplier/A_0402WGF4701TCE/A_0402WGF4701TCE"
import { HYG_8503A } from "../imports/supplier/HYG_8503A/HYG_8503A"
import { AO3400A } from "../imports/supplier/AO3400A/AO3400A"
import { A_0402WGF1000TCE } from "../imports/supplier/A_0402WGF1000TCE/A_0402WGF1000TCE"
import { CL10A106KP8NNNC } from "../imports/supplier/CL10A106KP8NNNC/CL10A106KP8NNNC"
import { B4B_PH_K_S_LF__SN_ } from "../imports/supplier/B4B_PH_K_S_LF__SN_/B4B_PH_K_S_LF__SN_"
import { ERJPA3F1001V } from "../imports/supplier/ERJPA3F1001V/ERJPA3F1001V"
import React from "react"
import catalog from "./jlcpcb-catalog.json"
import { A_0402WGF1001TCE } from "../imports/supplier/A_0402WGF1001TCE/A_0402WGF1001TCE"
import { CL31A106KBHNNNE } from "../imports/supplier/CL31A106KBHNNNE/CL31A106KBHNNNE"
import { CC0603KRX7R9BB104 } from "../imports/supplier/CC0603KRX7R9BB104/CC0603KRX7R9BB104"
import { CL05B103KB5NNNC } from "../imports/supplier/CL05B103KB5NNNC/CL05B103KB5NNNC"
import { CL05B104KO5NNNC } from "../imports/supplier/CL05B104KO5NNNC/CL05B104KO5NNNC"
import { A_0402CG150J500NT } from "../imports/supplier/A_0402CG150J500NT/A_0402CG150J500NT"
import { CL10A105KB8NNNC } from "../imports/supplier/CL10A105KB8NNNC/CL10A105KB8NNNC"
import { CL10B103KB8NNNC } from "../imports/supplier/CL10B103KB8NNNC/CL10B103KB8NNNC"
import { TYPE_C_31_M_12 } from "../imports/supplier/TYPE_C_31_M_12/TYPE_C_31_M_12"
import { SMF18A } from "../imports/supplier/SMF18A/SMF18A"
import { RP2040 } from "../imports/supplier/RP2040/RP2040"
import { ABM8_272_T3 } from "../imports/supplier/ABM8_272_T3/ABM8_272_T3"
import { CL10B224KA8NNNC } from "../imports/supplier/CL10B224KA8NNNC/CL10B224KA8NNNC"
import { A_0603WAF1001T5E } from "../imports/supplier/A_0603WAF1001T5E/A_0603WAF1001T5E"
import { A_0603WAF3902T5E } from "../imports/supplier/A_0603WAF3902T5E/A_0603WAF3902T5E"
import { A_0603WAF5101T5E } from "../imports/supplier/A_0603WAF5101T5E/A_0603WAF5101T5E"
import { A_0402WGF270JTCE } from "../imports/supplier/A_0402WGF270JTCE/A_0402WGF270JTCE"
import { A_0402WGF1003TCE } from "../imports/supplier/A_0402WGF1003TCE/A_0402WGF1003TCE"
import { A_0402WGF1002TCE } from "../imports/supplier/A_0402WGF1002TCE/A_0402WGF1002TCE"
import { A_0603WAF1003T5E } from "../imports/supplier/A_0603WAF1003T5E/A_0603WAF1003T5E"
import { A_0603WAF1002T5E } from "../imports/supplier/A_0603WAF1002T5E/A_0603WAF1002T5E"
import { A_0402WGF5101TCE } from "../imports/supplier/A_0402WGF5101TCE/A_0402WGF5101TCE"
import { USBLC6_2SC6 } from "../imports/supplier/USBLC6_2SC6/USBLC6_2SC6"
import { FRL0805FR240TS } from "../imports/supplier/FRL0805FR240TS/FRL0805FR240TS"
import { GD25Q16EEIGR } from "../imports/supplier/GD25Q16EEIGR/GD25Q16EEIGR"
import { A_0603WAF2202T5E } from "../imports/supplier/A_0603WAF2202T5E/A_0603WAF2202T5E"
import { A4988SETTR_T } from "../imports/supplier/A4988SETTR_T/A4988SETTR_T"
import { CL21A226MAQNNNE } from "../imports/supplier/CL21A226MAQNNNE/CL21A226MAQNNNE"
import { CC0805KRX7R9BB104 } from "../imports/supplier/CC0805KRX7R9BB104/CC0805KRX7R9BB104"
import { CL05A105KA5NQNC } from "../imports/supplier/CL05A105KA5NQNC/CL05A105KA5NQNC"
import { RVT1V470M0605 } from "../imports/supplier/RVT1V470M0605/RVT1V470M0605"
import { SRN4018_4R7M } from "../imports/supplier/SRN4018_4R7M/SRN4018_4R7M"
import { AP63203WU_7 } from "../imports/supplier/AP63203WU_7/AP63203WU_7"
import { B5819W_SL } from "../imports/supplier/B5819W_SL/B5819W_SL"
import { CH224K } from "../imports/supplier/CH224K/CH224K"
const parts: Record<string, React.ComponentType<any>> = {
 "C79815": AS5600_ASOM,
 "C5815189": StandardUsbConnector,
 "C160390": SmtMotorConnector,
 "C478000": PMEG6020ELRX,
 "C960916": CL05B104KB5NNNC,
 "C965799": XL_1608SURC_06,
 "C25104": A_0402WGF3300TCE,
 "C458749": LTST_C19HE1WT,
 "C509876": DTC114EU3HZGT106,
 "C99269": TMP102AIDRLR,
 "C25900": A_0402WGF4701TCE,
 "C7544813": HYG_8503A,
 "C20917": AO3400A,
 "C25076": A_0402WGF1000TCE,
 "C19702": CL10A106KP8NNNC,

 "C131334": B4B_PH_K_S_LF__SN_,
 "C441922": ERJPA3F1001V,
 "C11702": A_0402WGF1001TCE,
 "C13585": CL31A106KBHNNNE,
 "C14663": CC0603KRX7R9BB104,
 "C15195": CL05B103KB5NNNC,
 "C1525": CL05B104KO5NNNC,
 "C1548": A_0402CG150J500NT,
 "C15849": CL10A105KB8NNNC,
 "C1589": CL10B103KB8NNNC,

 "C19077512": SMF18A,
 "C2040": RP2040,
 "C20625731": ABM8_272_T3,
 "C21120": CL10B224KA8NNNC,
 "C21190": A_0603WAF1001T5E,
 "C23153": A_0603WAF3902T5E,
 "C23186": A_0603WAF5101T5E,
 "C25100": A_0402WGF270JTCE,
 "C25741": A_0402WGF1003TCE,
 "C25744": A_0402WGF1002TCE,
 "C25803": A_0603WAF1003T5E,
 "C25804": A_0603WAF1002T5E,
 "C25905": A_0402WGF5101TCE,
 "C2687116": USBLC6_2SC6,
 "C2930216": FRL0805FR240TS,
 "C2986331": GD25Q16EEIGR,
 "C31850": A_0603WAF2202T5E,
 "C38437": A4988SETTR_T,
 "C45783": CL21A226MAQNNNE,
 "C49678": CC0805KRX7R9BB104,
 "C52923": CL05A105KA5NQNC,
 "C72522": RVT1V470M0605,
 "C780206": SRN4018_4R7M,
 "C780769": AP63203WU_7,
 "C8598": B5819W_SL,
 "C970725": CH224K
}
/** Uses supplier-imported components directly; never overrides land patterns or CAD transforms. */
export function SupplierPart({name,...props}:any) {
 const id=(catalog.components as Record<string,string>)[name]
 if(!id || !parts[id]) throw new Error("Missing supplier import for "+name)
 if(props.footprint || props.cadModel) throw new Error("Supplier geometry override is forbidden: "+name)
 return React.createElement(parts[id], {name,...props})
}