MustafaMulla29/wireless-mouse-pcb

This code defines a 3.3V low dropout voltage regulator chip (AP2112K-3.3TRG1) with five pins (VIN, GND, Enable, NC, VOUT) and its associated PCB footprint and 3D models for hardware implementation.

Version
1.0.6
License
unset
Stars
0

imports/PMW3360DM_T2QU.tsx

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

const pinLabels = {
  pin1: ["NC1"],
  pin2: ["NC2"],
  pin3: ["VDDPIX"],
  pin4: ["VDD"],
  pin5: ["VDDIO"],
  pin6: ["NC3"],
  pin7: ["NRESET"],
  pin8: ["GND"],
  pin9: ["MOTION"],
  pin10: ["SCLK"],
  pin11: ["MOSI"],
  pin12: ["MISO"],
  pin13: ["NCS"],
  pin14: ["NC4"],
  pin15: ["LED_P"],
  pin16: ["NC5"],
} as const;

export const PMW3360DM_T2QU = (props: ChipProps<typeof pinLabels>) => {
  return (
    <chip
      pinLabels={pinLabels}
      supplierPartNumbers={{
        jlcpcb: ["C20612443"],
      }}
      manufacturerPartNumber="PMW3360DM-T2QU"
      footprint={
        <footprint>
          <cutout
            name="SENSOR_CUTOUT"
            shape="rect"
            width="8.60mm"
            height="17.26mm"
            pcbX={0}
            pcbY={0.825}
          />
          <platedhole
            portHints={["pin1"]}
            pcbX="-5.499989mm"
            pcbY="6.674993mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <platedhole
            portHints={["pin2"]}
            pcbX="-5.499989mm"
            pcbY="4.894961mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <platedhole
            portHints={["pin3"]}
            pcbX="-5.499989mm"
            pcbY="3.114929mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <platedhole
            portHints={["pin4"]}
            pcbX="-5.499989mm"
            pcbY="1.334897mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <platedhole
            portHints={["pin5"]}
            pcbX="-5.499989mm"
            pcbY="-0.444881mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <platedhole
            portHints={["pin6"]}
            pcbX="-5.499989mm"
            pcbY="-2.224913mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <platedhole
            portHints={["pin7"]}
            pcbX="-5.499989mm"
            pcbY="-4.004945mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <platedhole
            portHints={["pin8"]}
            pcbX="-5.499989mm"
            pcbY="-5.784977mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <platedhole
            portHints={["pin9"]}
            pcbX="5.499989mm"
            pcbY="-6.674993mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <platedhole
            portHints={["pin10"]}
            pcbX="5.499989mm"
            pcbY="-4.894961mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <platedhole
            portHints={["pin11"]}
            pcbX="5.499989mm"
            pcbY="-3.114929mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <platedhole
            portHints={["pin12"]}
            pcbX="5.499989mm"
            pcbY="-1.335151mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <platedhole
            portHints={["pin13"]}
            pcbX="5.499989mm"
            pcbY="0.444881mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <platedhole
            portHints={["pin14"]}
            pcbX="5.499989mm"
            pcbY="2.224913mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <platedhole
            portHints={["pin15"]}
            pcbX="5.499989mm"
            pcbY="4.004945mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <platedhole
            portHints={["pin16"]}
            pcbX="5.499989mm"
            pcbY="5.784977mm"
            outerDiameter="1.3999972mm"
            holeDiameter="0.700024mm"
            shape="circle"
          />
          <silkscreenpath
            route={[
              { x: -4.599990800000228, y: -8.00000939999984 },
              { x: 4.599990799999887, y: -8.00000939999984 },
              { x: 4.599990799999887, y: -7.225106199999914 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: -4.599990800000228, y: 9.499981000000048 },
              { x: 4.599990799999887, y: 9.499981000000048 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: 4.599990799999887, y: 9.499981000000048 },
              { x: 4.599990799999887, y: -8.00000939999984 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: -4.599990800000228, y: 9.499981000000048 },
              { x: -4.599990800000228, y: -8.00000939999984 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: 4.599990799999887, y: 6.3350394000001415 },
              { x: 4.599990799999887, y: 8.199958200000083 },
              { x: -4.599990800000228, y: 8.199958200000083 },
              { x: -4.599990800000228, y: 7.225055399999974 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: 4.599990799999887, y: 4.55505820000019 },
              { x: 3.7999923999998373, y: 4.55505820000019 },
              { x: 3.7999923999998373, y: -6.100013199999921 },
              { x: 4.599990799999887, y: -6.100013199999921 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: -4.600702000000183, y: 1.8845530000000963 },
              { x: -4.001262000000224, y: 1.8845530000000963 },
              { x: -4.001262000000224, y: -2.7992069999999103 },
              { x: -4.5803820000001, y: -2.7992069999999103 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: -4.599990800000228, y: -6.335039399999914 },
              { x: -4.599990800000228, y: -8.00000939999984 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: -4.599990800000228, y: -4.5550581999998485 },
              { x: -4.599990800000228, y: -5.234914599999911 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: -4.599990800000228, y: -2.7750515999998697 },
              { x: -4.599990800000228, y: -3.4549333999998453 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: -4.599990800000228, y: -0.9950449999998909 },
              { x: -4.599990800000228, y: -1.6749267999998665 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: -4.599990800000228, y: 0.7849362000001747 },
              { x: -4.599990800000228, y: 0.1050798000001123 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: -4.599990800000228, y: 2.56494280000004 },
              { x: -4.599990800000228, y: 1.8850609999999506 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: -4.599990800000228, y: 4.3449240000001055 },
              { x: -4.599990800000228, y: 3.6650676000001567 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: -4.599990800000228, y: 6.124930600000198 },
              { x: -4.599990800000228, y: 5.445048800000222 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: 4.599990799999887, y: 4.55505820000019 },
              { x: 4.599990799999887, y: 5.234863800000085 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: 4.599990799999887, y: 2.775051600000097 },
              { x: 4.599990799999887, y: 3.4548826000001327 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: 4.599990799999887, y: 0.9950450000001183 },
              { x: 4.599990799999887, y: 1.6748760000000402 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: 4.599990799999887, y: -0.7849361999998337 },
              { x: 4.599990799999887, y: -0.10513059999993857 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: 4.599990799999887, y: -2.564942799999926 },
              { x: 4.599990799999887, y: -1.8851117999998905 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: 4.599990799999887, y: -4.344923999999764 },
              { x: 4.599990799999887, y: -3.6651183999998693 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: 4.599990799999887, y: -6.124930599999857 },
              { x: 4.599990799999887, y: -5.445099599999821 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: 2.1998939999998584, y: -0.49999899999988884 },
              { x: 2.1249344296982144, y: -1.0693734644066808 },
              { x: 1.9051640896328763, y: -1.599945999999818 },
              { x: 1.5555599652915362, y: -2.055558965291425 },
              { x: 1.0999469999998155, y: -2.405163089632879 },
              { x: 0.5693744644066783, y: -2.6249334296981033 },
              { x: -2.2737367544323206e-13, y: -2.699892999999861 },
              { x: -0.5693744644069056, y: -2.6249334296981033 },
              { x: -1.0999470000001565, y: -2.405163089632879 },
              { x: -1.5555599652917635, y: -2.055558965291425 },
              { x: -1.9051640896331037, y: -1.599945999999818 },
              { x: -2.124934429698442, y: -1.0693734644066808 },
              { x: -2.1998940000001994, y: -0.49999899999988884 },
              { x: -2.124934429698442, y: 0.06937546440701681 },
              { x: -1.9051640896331037, y: 0.599948000000154 },
              { x: -1.5555599652917635, y: 1.055560965291761 },
              { x: -1.0999470000001565, y: 1.4051650896331012 },
              { x: -0.5693744644069056, y: 1.6249354296984393 },
              { x: -2.2737367544323206e-13, y: 1.6998950000001969 },
              { x: 0.5693744644066783, y: 1.6249354296984393 },
              { x: 1.0999469999998155, y: 1.4051650896331012 },
              { x: 1.5555599652915362, y: 1.055560965291761 },
              { x: 1.9051640896328763, y: 0.599948000000154 },
              { x: 2.1249344296982144, y: 0.06937546440701681 },
              { x: 2.1998939999998584, y: -0.49999899999988884 },
            ]}
          />
          <silkscreentext
            text="{NAME}"
            pcbX="0.009398mm"
            pcbY="10.621393mm"
            anchorAlignment="center"
            fontSize="1mm"
          />
          <courtyardoutline
            outline={[
              { x: -6.489002000000141, y: 9.871393000000126 },
              { x: 6.507797999999866, y: 9.871393000000126 },
              { x: 6.507797999999866, y: -8.281606999999894 },
              { x: -6.489002000000141, y: -8.281606999999894 },
              { x: -6.489002000000141, y: 9.871393000000126 },
            ]}
          />
        </footprint>
      }
      cadModel={{
        objUrl:
          "https://modelcdn.tscircuit.com/easyeda_models/assets/C20612443.obj?uuid=1c741dd9ddf74d59b063ad201dade000",
        stepUrl:
          "https://modelcdn.tscircuit.com/easyeda_models/assets/C20612443.step?uuid=1c741dd9ddf74d59b063ad201dade000",
        pcbRotationOffset: 0,
        modelOriginPosition: {
          x: 0.000012700000070253736,
          y: 0.7,
          z: 1.6999947999999998,
        },
      }}
      {...props}
    />
  );
};