gokul/flex-led-wristband
A flexible, rechargeable touch wristband PCB with MCP73831 Li-ion charging, switched 3.0 V regulation, ATtiny402 control, TTP223 capacitive touch sensing, and six charlieplexed red LEDs plus power/charge indicators.
- Version
- 0.0.3
- License
- unset
- Stars
- 0
lib/Footprints.tsx
// Dimensions are millimetres. References are recorded in FOOTPRINT_REVIEW.txt.
export function ChargerFootprint() {
return (
<footprint insertionDirection="from_above">
{[
[1, -1.4, 0.95],
[2, -1.4, 0],
[3, -1.4, -0.95],
[4, 1.4, -0.95],
[5, 1.4, 0.95],
].map(([pin, x, y]) => (
<smtpad
portHints={[String(pin)]}
pcbX={x}
pcbY={y}
width={1.1}
height={0.6}
shape="rect"
coveredWithSolderMask
/>
))}
{[-1.4, 1.4].map((x) => (
<pcbsoldermaskopening
key={x}
layer="top"
shape="rect"
pcbX={x}
pcbY={0}
width={1.3}
height={2.7}
/>
))}
<courtyardrect width={4.4} height={3.5} />
</footprint>
);
}
export function RegulatorFootprint() {
return (
<footprint insertionDirection="from_above">
{[
[1, -1.15, 0.95],
[2, -1.15, -0.95],
[3, 1.15, 0],
].map(([pin, x, y]) => (
<smtpad
portHints={[String(pin)]}
pcbX={x}
pcbY={y}
width={1.05}
height={0.65}
shape="rect"
solderMaskMargin={0.1}
/>
))}
<courtyardrect width={3.85} height={3.5} />
</footprint>
);
}
export function TouchFootprint() {
return (
<footprint insertionDirection="from_above">
{[
[1, -1.3, 0.95],
[2, -1.3, 0],
[3, -1.3, -0.95],
[4, 1.3, -0.95],
[5, 1.3, 0],
[6, 1.3, 0.95],
].map(([pin, x, y]) => (
<smtpad
portHints={[String(pin)]}
pcbX={x}
pcbY={y}
width={1}
height={0.6}
shape="rect"
coveredWithSolderMask
/>
))}
{[-1.3, 1.3].map((x) => (
<pcbsoldermaskopening
key={x}
layer="top"
shape="rect"
pcbX={x}
pcbY={0}
width={1.2}
height={2.7}
/>
))}
<courtyardrect width={4.1} height={3.6} />
</footprint>
);
}
export function LedFootprint() {
return (
<footprint insertionDirection="from_above">
<smtpad
portHints={["1", "anode"]}
pcbX={-0.75}
pcbY={0}
width={0.8}
height={0.8}
shape="rect"
solderMaskMargin={0.05}
/>
<smtpad
portHints={["2", "cathode"]}
pcbX={0.75}
pcbY={0}
width={0.8}
height={0.8}
shape="rect"
solderMaskMargin={0.05}
/>
<courtyardrect width={2.8} height={1.3} />
<silkscreentext text="K" pcbX={1.9} pcbY={0} fontSize={0.8} />
</footprint>
);
}