muse/book-reading-clip-lamp

A 60‑mm ESP32‑S3 lamp-head PCB combining USB‑C battery charging/power regulation, OV5640 autofocus camera interfacing, I²S microphone and differential speaker audio, six‑LED boost-driven reading light, buttons, status indicators, and battery monitoring.

Version
0.2.5
License
unset
Stars
0

imports/ESP32_S3_WROOM_1U_N16R8.tsx

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

const pinLabels = {
  pin1: ["IO20"],
  pin2: ["GND"],
  pin3: ["IO8"],
  pin4: ["IO18"],
  pin5: ["IO17"],
  pin6: ["IO16"],
  pin7: ["IO15"],
  pin8: ["IO7"],
  pin9: ["IO6"],
  pin10: ["IO5"],
  pin11: ["IO4"],
  pin12: ["EN"],
  pin13: ["pin13"],
  pin14: ["pin14"],
  pin15: ["pin15"],
  pin16: ["pin16"],
  pin17: ["pin17"],
  pin18: ["pin18"],
  pin19: ["pin19"],
  pin20: ["pin20"],
  pin21: ["pin21"],
  pin22: ["pin22"],
  pin23: ["pin23"],
  pin24: ["pin24"],
  pin25: ["pin25"],
  pin26: ["pin26"],
  pin27: ["pin27"],
  pin28: ["pin28"],
  pin29: ["pin29"],
  pin30: ["pin30"],
  pin31: ["pin31"],
  pin32: ["pin32"],
  pin33: ["pin33"],
  pin34: ["pin34"],
  pin35: ["pin35"],
  pin36: ["pin36"],
  pin37: ["pin37"],
  pin38: ["pin38"],
  pin39: ["pin39"],
  pin40: ["pin40"],
  pin41: ["pin41"]
} as const

const pinAttributes = {
  pin2: {requiresGround: true}
} as const

export const ESP32_S3_WROOM_1U_N16R8 = (props: ChipProps<typeof pinLabels>) => {
  return (
    <chip
      pinLabels={pinLabels}
      pinAttributes={pinAttributes}
      supplierPartNumbers={{
  "jlcpcb": [
    "C3013946"
  ]
}}
      manufacturerPartNumber="ESP32-S3-WROOM-1U-N16R8"
      footprint={<footprint>
        <smtpad portHints={["pin1"]} pcbX="-8.750046mm" pcbY="9.0449527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin2"]} pcbX="-8.750046mm" pcbY="7.7749527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin3"]} pcbX="-8.750046mm" pcbY="6.5049527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin4"]} pcbX="-8.750046mm" pcbY="5.2349527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin5"]} pcbX="-8.750046mm" pcbY="3.9649527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin6"]} pcbX="-8.750046mm" pcbY="2.6949527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin7"]} pcbX="-8.750046mm" pcbY="1.4249527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin8"]} pcbX="-8.750046mm" pcbY="0.1549527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin9"]} pcbX="-8.750046mm" pcbY="-1.1150473mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin10"]} pcbX="-8.750046mm" pcbY="-2.3850473mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin11"]} pcbX="-8.750046mm" pcbY="-3.6550473mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin12"]} pcbX="-8.750046mm" pcbY="-4.9250473mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin13"]} pcbX="-8.750046mm" pcbY="-6.1950473mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin14"]} pcbX="-8.750046mm" pcbY="-7.4650473mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin15"]} pcbX="-6.985mm" pcbY="-8.7449533mm" width="0.8999982mm" height="1.499997mm" shape="rect" />
<smtpad portHints={["pin16"]} pcbX="-5.715mm" pcbY="-8.7449533mm" width="0.8999982mm" height="1.499997mm" shape="rect" />
<smtpad portHints={["pin17"]} pcbX="-4.445mm" pcbY="-8.7449533mm" width="0.8999982mm" height="1.499997mm" shape="rect" />
<smtpad portHints={["pin18"]} pcbX="-3.175mm" pcbY="-8.7449533mm" width="0.8999982mm" height="1.499997mm" shape="rect" />
<smtpad portHints={["pin19"]} pcbX="-1.905mm" pcbY="-8.7449533mm" width="0.8999982mm" height="1.499997mm" shape="rect" />
<smtpad portHints={["pin20"]} pcbX="-0.635mm" pcbY="-8.7449533mm" width="0.8999982mm" height="1.499997mm" shape="rect" />
<smtpad portHints={["pin21"]} pcbX="0.635mm" pcbY="-8.7449533mm" width="0.8999982mm" height="1.499997mm" shape="rect" />
<smtpad portHints={["pin22"]} pcbX="1.905mm" pcbY="-8.7449533mm" width="0.8999982mm" height="1.499997mm" shape="rect" />
<smtpad portHints={["pin23"]} pcbX="3.175mm" pcbY="-8.7449533mm" width="0.8999982mm" height="1.499997mm" shape="rect" />
<smtpad portHints={["pin24"]} pcbX="4.445mm" pcbY="-8.7449533mm" width="0.8999982mm" height="1.499997mm" shape="rect" />
<smtpad portHints={["pin25"]} pcbX="5.715mm" pcbY="-8.7449533mm" width="0.8999982mm" height="1.499997mm" shape="rect" />
{/* Corrected catalog 0.029972 mm row offset: Espressif Figure 11-2 has a straight bottom pad row. */}
<smtpad portHints={["pin26"]} pcbX="6.985mm" pcbY="-8.7449533mm" width="0.8999982mm" height="1.499997mm" shape="rect" />
<smtpad portHints={["pin27"]} pcbX="8.750046mm" pcbY="-7.4650473mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin28"]} pcbX="8.750046mm" pcbY="-6.1950473mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin29"]} pcbX="8.750046mm" pcbY="-4.9250473mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin30"]} pcbX="8.750046mm" pcbY="-3.6550473mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin31"]} pcbX="8.750046mm" pcbY="-2.3850473mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin32"]} pcbX="8.750046mm" pcbY="-1.1150473mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin33"]} pcbX="8.750046mm" pcbY="0.1549527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin34"]} pcbX="8.750046mm" pcbY="1.4249527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin35"]} pcbX="8.750046mm" pcbY="2.6949527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin36"]} pcbX="8.750046mm" pcbY="3.9649527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin37"]} pcbX="8.750046mm" pcbY="5.2349527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin38"]} pcbX="8.750046mm" pcbY="6.5049527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin39"]} pcbX="8.750046mm" pcbY="7.7749527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin40"]} pcbX="8.750046mm" pcbY="9.0449527mm" width="1.499997mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin41"]} pcbX="-1.500124mm" pcbY="1.3248767mm" width="0.8999982mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin41"]} pcbX="-2.900172mm" pcbY="1.3248767mm" width="0.8999982mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin41"]} pcbX="-0.100076mm" pcbY="1.3248767mm" width="0.8999982mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin41"]} pcbX="-0.100076mm" pcbY="2.7249247mm" width="0.8999982mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin41"]} pcbX="-1.500124mm" pcbY="2.7249247mm" width="0.8999982mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin41"]} pcbX="-2.900172mm" pcbY="2.7249247mm" width="0.8999982mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin41"]} pcbX="-2.900172mm" pcbY="-0.0751713mm" width="0.8999982mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin41"]} pcbX="-1.500124mm" pcbY="-0.0751713mm" width="0.8999982mm" height="0.8999982mm" shape="rect" />
<smtpad portHints={["pin41"]} pcbX="-0.100076mm" pcbY="-0.0751713mm" width="0.8999982mm" height="0.8999982mm" shape="rect" />
{/* Exposed pad 41 is ONE electrical pad. The nine original 0.9 mm
    solder-mask/paste windows remain unchanged. Four 0.30 mm copper bridges
    join the land array under solder mask; their negative paste margin
    suppresses paste apertures. This makes a connected 3.7 mm ground pattern
    and allows tscircuit to create one valid PCB port for the exposed pad.
    Reflow/stencil and thermal-via processing still require assembly review.
    Ref: Espressif WROOM-1/1U datasheet, recommended land pattern, Fig 11-2. */}
<smtpad portHints={["pin41"]} pcbX={-1.500124} pcbY={1.3248767}
  width={3.7} height={0.3} shape="rect"
  coveredWithSolderMask solderPasteMargin={-0.16} />
<smtpad portHints={["pin41"]} pcbX={-2.900172} pcbY={1.3248767}
  width={0.3} height={3.7} shape="rect"
  coveredWithSolderMask solderPasteMargin={-0.16} />
<smtpad portHints={["pin41"]} pcbX={-1.500124} pcbY={1.3248767}
  width={0.3} height={3.7} shape="rect"
  coveredWithSolderMask solderPasteMargin={-0.16} />
<smtpad portHints={["pin41"]} pcbX={-0.100076} pcbY={1.3248767}
  width={0.3} height={3.7} shape="rect"
  coveredWithSolderMask solderPasteMargin={-0.16} />
<silkscreenpath route={[{"x":9.016999999999939,"y":9.726104500000133},{"x":9.016999999999939,"y":10.504944700000124}]} />
<silkscreenpath route={[{"x":-9.000007400000186,"y":10.504944700000124},{"x":-9.000007400000186,"y":9.726104500000133}]} />
<silkscreenpath route={[{"x":-9.000007400000186,"y":10.505351100000212},{"x":9.016999999999939,"y":10.504944700000124}]} />
<silkscreenpath route={[{"x":7.666151799999966,"y":-8.994051099999865},{"x":9.016999999999939,"y":-8.994051099999865},{"x":9.016999999999939,"y":-8.14619909999999}]} />
<silkscreenpath route={[{"x":-9.000007400000186,"y":-8.14619909999999},{"x":-9.000007400000186,"y":-8.994051099999865},{"x":-7.66615180000008,"y":-8.994051099999865}]} />
<silkscreencircle pcbX="-9.8552mm" pcbY="10.1043867mm" radius="0.183388mm" />
<silkscreentext text="{NAME}" pcbX="-0mm" pcbY="10.5021527mm" anchorAlignment="center" fontSize="1mm" />
<courtyardoutline outline={[{"x":-9.7496000000001,"y":9.752152700000238},{"x":9.749599999999987,"y":9.752152700000238},{"x":9.749599999999987,"y":-9.74704729999985},{"x":-9.7496000000001,"y":-9.74704729999985},{"x":-9.7496000000001,"y":9.752152700000238}]} />
      </footprint>}
      cadModel={{
        objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C3013946.obj?uuid=46b6d65fd84542c2a5b86711f114a123",
        stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C3013946.step?uuid=46b6d65fd84542c2a5b86711f114a123",
        pcbRotationOffset: 0,
        modelOriginPosition: { x: 0, y: -0.6549987000000828, z: 0 },
      }}
      {...props}
    />
  )
}