seveibar/nema17-rp2040-stepper-controller
A tscircuit package created by seveibar.
- Version
- 0.3.1
- License
- unset
- Stars
- 0
schematic/StatusLedSection.tsx
import { Fragment } from "react";
import { LTST_C19HE1WT } from "../imports/LTST_C19HE1WT";
import { DTC114EU3HZGT106 } from "../imports/DTC114EU3HZGT106";
import { revisionPlacement as p } from "../mechanical/revision-placement";
const sch = {schSheetName:"status_led", schSectionName:"rgb"};
export const StatusLedSection = () => <>
<schematicsheet name="status_led" displayName="RGB Status Indicator" sheetIndex={8}><schematicsection name="rgb" displayName="Status"/></schematicsheet>
<LTST_C19HE1WT name="D_STATUS" showPinAliases={false} {...p("D_STATUS")} {...sch}/>
{/* Use regulated logic power. Status LED currents are reduced for USB programming power. */}
<trace name="STATUS_3V3" from=".MCU > .L_AVDD > .pin1" to=".D_STATUS > ._POS" schDisplayLabel="V3V3" thickness="0.2mm"/>
{(["R","G","B"] as const).map((color,index) => {
const q=`Q_STATUS_${color}`, r=`R_STATUS_${color}`;
return <Fragment key={color}>
<resistor name={r} resistance="1k" footprint="0402" supplierPartNumbers={{jlcpcb:["C11702"]}}
{...p(r)} {...sch} schOrientation="vertical"/>
<DTC114EU3HZGT106 name={q} {...p(q)} {...sch}/>
<trace name={`STATUS_${color}_LED`} from={`.D_STATUS > .${color}_NEG`} to={`.${r} > .pin1`} thickness="0.15mm"/>
<trace name={`STATUS_${color}_SINK`} from={`.${r} > .pin2`} to={`.${q} > .C`} thickness="0.15mm"/>
<trace name={`STATUS_${color}_GND`} from={`.${q} > .E`} to="net.GND" thickness="0.15mm"/>
<trace name={`STATUS_${color}_GPIO`} from={`.MCU > .U1 > .GPIO${[25,2,3][index]}`} to={`.${q} > .B`} schDisplayLabel={`LED_${color}`} thickness="0.15mm"/>
</Fragment>;
})}
</>;