abse/smartwatch-flex-top-only
Three-panel flex smartwatch with two parallel R3.9 bends, all components flat-top, low-profile JST connector harnesses, split heartbeat optical windows and screw-retained PCB mounting. Modeled 39 × 50.5 × 14.5mm prototype; 100% routing, zero native DRC and shorts. Hardware qualification pending.
- Version
- 0.2.22
- License
- unset
- Stars
- 0
components/BoardPads.tsx
import type { ChipProps, TestpointProps } from '@tscircuit/props'
const twoPins = {pin1:['POS'],pin2:['NEG']} as const
// PCB copper features: not purchased components. Dimensions in millimetres.
export const WirePads = (props: ChipProps<typeof twoPins>) => <connector
doNotPlace
pinLabels={twoPins}
footprint={<footprint insertionDirection="from_above">
<smtpad portHints={['pin1']} pcbX={-1.05} pcbY={0} width={1.3} height={1.6} shape="rect" />
<smtpad portHints={['pin2']} pcbX={1.05} pcbY={0} width={1.3} height={1.6} shape="rect" />
<courtyardrect width={3.654} height={1.854}/>
</footprint>} {...props}/>
export const DockPads = (props: ChipProps<typeof twoPins>) => <connector
doNotPlace
pinLabels={twoPins}
pinAttributes={{pin2:{requiresGround:true}}}
footprint={<footprint insertionDirection="from_above">
<smtpad portHints={['pin1']} pcbX={-2} pcbY={0} width={2} height={2} shape="rect" />
<smtpad portHints={['pin2']} pcbX={2} pcbY={0} width={2} height={2} shape="rect" />
<courtyardrect width={6.254} height={2.254}/>
</footprint>} {...props}/>
export const ProbePad = (props:TestpointProps) => <testpoint footprintVariant="pad" padDiameter={.9}
doNotPlace
footprint={<footprint><smtpad portHints={['pin1']} pcbX={0} pcbY={0} radius={0.45} shape="circle" /><courtyardcircle radius={.577}/></footprint>} {...props}/>