seveibar/WS2812B_2020
The code defines a PCB component for a WS2812B LED driver with four pins for data input, ground, power, and output, complete with 3D model and footprint layout for mounting.
- Version
- 1.0.0
- License
- unset
- Stars
- 0
index.tsx
PCB
Schematic
import type { ChipProps } from "tscircuit"
const pinLabels = {
pin1: ["pin1", "DO"],
pin2: ["pin2", "GND"],
pin3: ["pin3", "DI"],
pin4: ["pin4", "VDD"],
} as const
export const WS2812B_2020 = (props: ChipProps<typeof pinLabels>) => {
return (
<chip
{...props}
cadModel={{
objUrl:
"https://modelcdn.tscircuit.com/easyeda_models/download?uuid=caa88715b11f4aa189b02e52bbb84e4f&pn=C965555",
rotationOffset: { x: 0, y: 0, z: 0 },
positionOffset: { x: 0, y: 0, z: -0.07 },
}}
schPortArrangement={{
leftSide: {
direction: "top-to-bottom",
pins: ["DI", "GND"],
},
rightSide: {
direction: "top-to-bottom",
pins: ["VDD", "DO"],
},
}}
pinLabels={pinLabels}
supplierPartNumbers={{
jlcpcb: ["C965555"],
}}
manufacturerPartNumber="WS2812B_2020"
footprint={
<footprint>
<smtpad
portHints={["pin1"]}
pcbX="-0.9150349999999889mm"
pcbY="0.5500369999999748mm"
width="0.8999982mm"
height="0.6999986mm"
shape="rect"
/>
<smtpad
portHints={["pin2"]}
pcbX="-0.9150349999999889mm"
pcbY="-0.5500369999999748mm"
width="0.8999982mm"
height="0.6999986mm"
shape="rect"
/>
<smtpad
portHints={["pin3"]}
pcbX="0.9150349999999889mm"
pcbY="-0.5500369999999748mm"
width="0.8999982mm"
height="0.6999986mm"
shape="rect"
/>
<smtpad
portHints={["pin4"]}
pcbX="0.9150349999999889mm"
pcbY="0.5500369999999748mm"
width="0.8999982mm"
height="0.6999986mm"
shape="rect"
/>
<silkscreenpath
route={[
{ x: -0.24998679999998785, y: 0.7499603999999636 },
{ x: -0.09999980000009145, y: 0.7499603999999636 },
{ x: -0.09999980000009145, y: -0.6500114000000394 },
{ x: -0.09999980000009145, y: -0.6999986000000717 },
{ x: -0.24998679999998785, y: -0.6999986000000717 },
]}
/>
<silkscreenpath
route={[
{ x: -0.24998679999998785, y: 0.7499603999999636 },
{ x: -0.24998679999998785, y: -0.7000239999999849 },
]}
/>
<silkscreenpath
route={[
{ x: -1.299997400000052, y: 1.1499850000000151 },
{ x: -1.299997400000052, y: 1.1381486000000223 },
]}
/>
<silkscreenpath
route={[
{ x: 0.9999979999998914, y: 1.0999977999999828 },
{ x: -0.999998000000005, y: 1.0999977999999828 },
]}
/>
<silkscreenpath
route={[
{ x: -0.999998000000005, y: -1.0999977999999828 },
{ x: 0.9999979999998914, y: -1.0999977999999828 },
]}
/>
</footprint>
}
/>
)
}