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.20
License
unset
Stars
0

components/esp32/BQ51013BRHLR.tsx

import type { ChipProps } from "@tscircuit/props"

const pinLabels = {
  pin1: ["PGND2"],
  pin2: ["AC1"],
  pin3: ["BOOT1"],
  pin4: ["OUT"],
  pin5: ["CLMP1"],
  pin6: ["COM1"],
  pin7: ["CHG"],
  pin8: ["AD_EN"],
  pin9: ["AD"],
  pin10: ["EN1"],
  pin11: ["EN2"],
  pin12: ["ILIM"],
  pin13: ["TS","CTRL"],
  pin14: ["FOD"],
  pin15: ["COM2"],
  pin16: ["CLMP2"],
  pin17: ["BOOT2"],
  pin18: ["RECT"],
  pin19: ["AC2"],
  pin20: ["PGND1"],
  pin21: ["pin21"]
} as const

// AC1/AC2 receive the wireless input power; they are not DC supply outputs.
const pinAttributes = {
  pin2: {requiresPower: true},
  pin19: {requiresPower: true},
  pin1: {requiresGround: true},
  pin20: {requiresGround: true}
} as const

export const BQ51013BRHLR = (props: ChipProps<typeof pinLabels>) => {
  return (
    <chip
      pinLabels={pinLabels}
      pinAttributes={pinAttributes}
      symbol={
        <symbol>
          <port name="pin1" pinNumber={1} aliases={["PGND2"]} direction="up" schX={-0.4} schY={1.7} schStemLength={0.4} />
          <port name="pin2" pinNumber={2} aliases={["AC1"]} direction="left" schX={-1.4} schY={0.7} schStemLength={0.4} />
          <port name="pin3" pinNumber={3} aliases={["BOOT1"]} direction="left" schX={-1.4} schY={0.5} schStemLength={0.4} />
          <port name="pin4" pinNumber={4} aliases={["OUT"]} direction="left" schX={-1.4} schY={0.3} schStemLength={0.4} />
          <port name="pin5" pinNumber={5} aliases={["CLMP1"]} direction="left" schX={-1.4} schY={0.1} schStemLength={0.4} />
          <port name="pin6" pinNumber={6} aliases={["COM1"]} direction="left" schX={-1.4} schY={-0.1} schStemLength={0.4} />
          <port name="pin7" pinNumber={7} aliases={["CHG"]} direction="left" schX={-1.4} schY={-0.3} schStemLength={0.4} />
          <port name="pin8" pinNumber={8} aliases={["AD_EN"]} direction="left" schX={-1.4} schY={-0.5} schStemLength={0.4} />
          <port name="pin9" pinNumber={9} aliases={["AD"]} direction="left" schX={-1.4} schY={-0.7} schStemLength={0.4} />
          <port name="pin10" pinNumber={10} aliases={["EN1"]} direction="down" schX={-0.4} schY={-1.7} schStemLength={0.4} />
          <port name="pin11" pinNumber={11} aliases={["EN2"]} direction="down" schX={0.4} schY={-1.7} schStemLength={0.4} />
          <port name="pin12" pinNumber={12} aliases={["ILIM"]} direction="right" schX={1.4} schY={-0.7} schStemLength={0.4} />
          <port name="pin13" pinNumber={13} aliases={["TS","CTRL"]} direction="right" schX={1.4} schY={-0.5} schStemLength={0.4} />
          <port name="pin14" pinNumber={14} aliases={["FOD"]} direction="right" schX={1.4} schY={-0.3} schStemLength={0.4} />
          <port name="pin15" pinNumber={15} aliases={["COM2"]} direction="right" schX={1.4} schY={-0.1} schStemLength={0.4} />
          <port name="pin16" pinNumber={16} aliases={["CLMP2"]} direction="right" schX={1.4} schY={0.1} schStemLength={0.4} />
          <port name="pin17" pinNumber={17} aliases={["BOOT2"]} direction="right" schX={1.4} schY={0.3} schStemLength={0.4} />
          <port name="pin18" pinNumber={18} aliases={["RECT"]} direction="right" schX={1.4} schY={0.5} schStemLength={0.4} />
          <port name="pin19" pinNumber={19} aliases={["AC2"]} direction="right" schX={1.4} schY={0.7} schStemLength={0.4} />
          <port name="pin20" pinNumber={20} aliases={["PGND1"]} direction="up" schX={0.4} schY={1.7} schStemLength={0.4} />
          <schematicpath points={[{"x":-0.8,"y":1.3},{"x":0.8,"y":1.3},{"x":1,"y":1.1},{"x":1,"y":-1.1},{"x":0.8,"y":-1.3},{"x":-0.8,"y":-1.3},{"x":-1,"y":-1.1},{"x":-1,"y":1.1},{"x":-0.8,"y":1.3}]} strokeColor="#000000" />
          <schematiccircle center={{ x: -0.7, y: 1 }} radius={0.1} strokeWidth={0.02} color="#000000" />
          <port name="pin21" pinNumber={21} aliases={["21"]} direction="right" schX={1.2} schY={1} schStemLength={0.2} />
          <schematictext schX={0} schY={1.922} text="{NAME}" fontSize={0.2} anchor="bottom_center" />
        </symbol>
      }
      supplierPartNumbers={{
  "jlcpcb": [
    "C55663"
  ]
}}
      manufacturerPartNumber="BQ51013BRHLR"
      footprint={<footprint>
        <smtpad portHints={["pin20"]} pcbX="-2.249932mm" pcbY="0.750062mm" width="0.850011mm" height="0.2800096mm" shape="rect" />
<smtpad portHints={["pin19"]} pcbX="-1.75006mm" pcbY="1.748028mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin18"]} pcbX="-1.249934mm" pcbY="1.748028mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin17"]} pcbX="-0.750062mm" pcbY="1.748028mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin16"]} pcbX="-0.249936mm" pcbY="1.748028mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin15"]} pcbX="0.249936mm" pcbY="1.748028mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin14"]} pcbX="0.750062mm" pcbY="1.748028mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin13"]} pcbX="1.251458mm" pcbY="1.75006mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin12"]} pcbX="1.751584mm" pcbY="1.75006mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin11"]} points={[{x: "2.6749502mm", y: "0.8880348mm"}, {x: "2.6749502mm", y: "0.6080252mm"}, {x: "1.8249392mm", y: "0.6080252mm"}, {x: "1.8249392mm", y: "0.8880348mm"}]} shape="polygon" />
<smtpad portHints={["pin10"]} pcbX="2.249932mm" pcbY="-0.752094mm" width="0.850011mm" height="0.2800096mm" shape="rect" />
<smtpad portHints={["pin9"]} pcbX="1.751584mm" pcbY="-1.75006mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin8"]} pcbX="1.251458mm" pcbY="-1.75006mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin7"]} pcbX="0.751586mm" pcbY="-1.75006mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin6"]} pcbX="0.25146mm" pcbY="-1.75006mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin5"]} pcbX="-0.248412mm" pcbY="-1.75006mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin4"]} pcbX="-0.748538mm" pcbY="-1.75006mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin3"]} pcbX="-1.24841mm" pcbY="-1.75006mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin2"]} pcbX="-1.748536mm" pcbY="-1.75006mm" width="0.2800096mm" height="0.850011mm" shape="rect" />
<smtpad portHints={["pin1"]} pcbX="-2.249932mm" pcbY="-0.752094mm" width="0.850011mm" height="0.2800096mm" shape="rect" />
<smtpad portHints={["pin21"]} points={[{x: "-1.5999968mm", y: "1.0999978mm"}, {x: "1.5999968mm", y: "1.0999978mm"}, {x: "1.5999968mm", y: "0.3899916mm"}, {x: "2.675001mm", y: "0.3899916mm"}, {x: "2.675001mm", y: "0.1100074mm"}, {x: "1.7500092mm", y: "0.1100074mm"}, {x: "1.7500092mm", y: "-0.1100074mm"}, {x: "2.675001mm", y: "-0.1100074mm"}, {x: "2.675001mm", y: "-0.3899916mm"}, {x: "1.5999968mm", y: "-0.3899916mm"}, {x: "1.5999968mm", y: "-1.0999978mm"}, {x: "-1.5999968mm", y: "-1.0999978mm"}, {x: "-1.5999968mm", y: "-0.3899916mm"}, {x: "-2.675001mm", y: "-0.3899916mm"}, {x: "-2.675001mm", y: "-0.1100074mm"}, {x: "-1.7500092mm", y: "-0.1100074mm"}, {x: "-1.7500092mm", y: "0.1100074mm"}, {x: "-2.675001mm", y: "0.1100074mm"}, {x: "-2.675001mm", y: "0.3899916mm"}, {x: "-1.5999968mm", y: "0.3899916mm"}]} shape="polygon" />
<silkscreenpath route={[{"x":-2.413000000000011,"y":1.7779999999999063},{"x":-2.12112860000002,"y":1.7779999999999063}]} />
<silkscreenpath route={[{"x":2.1226779999999508,"y":1.7779999999999063},{"x":2.2859999999999445,"y":1.7779999999999063},{"x":2.2859999999999445,"y":1.1191239999999425}]} />
<silkscreenpath route={[{"x":2.2859999999999445,"y":-1.1231626000000006},{"x":2.2859999999999445,"y":-1.77800000000002},{"x":2.1226779999999508,"y":-1.77800000000002}]} />
<silkscreenpath route={[{"x":-2.413000000000011,"y":1.7779999999999063},{"x":-2.413000000000011,"y":1.1211052000001018}]} />
<silkscreenpath route={[{"x":-2.413000000000011,"y":-1.1231626000000006},{"x":-2.413000000000011,"y":-1.77800000000002}]} />
<silkscreencircle pcbX="-2.921mm" pcbY="-1.524mm" radius="0.127mm" />
<silkscreentext text="{NAME}" pcbX="-0.1905mm" pcbY="3.182368mm" anchorAlignment="center" fontSize="1mm" />
<courtyardoutline outline={[{"x":-2.9250010000000657,"y":2.4250655000000734},{"x":2.9250010000000657,"y":2.4250655000000734},{"x":2.9250010000000657,"y":-2.4250654999999597},{"x":-2.9250010000000657,"y":-2.4250654999999597},{"x":-2.9250010000000657,"y":2.4250655000000734}]} />
      </footprint>}
      cadModel={{
        objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C55663.obj?uuid=d37a54d40c264d5d8e19accad3495803",
        stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C55663.step?uuid=d37a54d40c264d5d8e19accad3495803",
        pcbRotationOffset: 90,
        modelOriginPosition: { x: -0.000012700000070253736, y: -0.000012700000070253736, z: 0 },
      }}
      {...props}
    />
  )
}