gokul/wireless-calculator

A USB‑C rechargeable battery-powered controller board with MCP73871 Li‑ion charging, TPS63070 buck‑boost and LDO power regulation, ATmega328P and ESP32‑S3 control, LCD/keypad user interface, status LEDs, and UART/programming connectors.

Version
0.0.1
License
ISC
Stars
0

imports/TPS7A0230PDBVR/TPS7A0230PDBVR.tsx

import objPath from "./TPS7A0230PDBVR.obj";
import stepPath from "./TPS7A0230PDBVR.step";
import type { ChipProps } from "@tscircuit/props";

const pinLabels = {
  pin1: ["IN"],
  pin2: ["GND"],
  pin3: ["EN"],
  pin4: ["NC"],
  pin5: ["OUT"],
} as const;

const pinAttributes = {
  pin2: { requiresGround: true },
  pin4: { isPassive: true },
  pin3: { isInput: true, canUseInternalPulldown: true },
  pin1: { isInput: true, requiresPower: true },
  pin5: {
    isOutput: true,
    providesPower: true,
    providesVoltage: "3V",
    shouldHaveDecouplingCapacitor: true,
  },
} satisfies NonNullable<ChipProps["pinAttributes"]>;

export const TPS7A0230PDBVR = (props: ChipProps<typeof pinLabels>) => {
  return (
    <chip
      pinLabels={pinLabels}
      pinAttributes={pinAttributes}
      supplierPartNumbers={{
        jlcpcb: ["C3747031"],
      }}
      manufacturerPartNumber="TPS7A0230PDBVR"
      footprint={
        <footprint>
          <smtpad
            portHints={["pin2"]}
            pcbX="1.3mm"
            pcbY="-0.000127mm"
            width="1.1mm"
            height="0.5999988mm"
            shape="rect"
          />
          <smtpad
            portHints={["pin3"]}
            pcbX="1.3mm"
            pcbY="0.949833mm"
            width="1.1mm"
            height="0.5999988mm"
            shape="rect"
          />
          <smtpad
            portHints={["pin1"]}
            pcbX="1.3mm"
            pcbY="-0.949833mm"
            width="1.1mm"
            height="0.5999988mm"
            shape="rect"
          />
          <smtpad
            portHints={["pin4"]}
            pcbX="-1.3mm"
            pcbY="0.950087mm"
            width="1.1mm"
            height="0.5999988mm"
            shape="rect"
          />
          <smtpad
            portHints={["pin5"]}
            pcbX="-1.3mm"
            pcbY="-0.950087mm"
            width="1.1mm"
            height="0.5999988mm"
            shape="rect"
          />
          <silkscreenpath
            route={[
              { x: -0.6984238000000005, y: -1.523974599999974 },
              { x: 0.6985507999999072, y: -1.5240254000000277 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: -0.42237660000012056, y: 1.3969745999999077 },
              { x: 0.42240199999992, y: 1.3969745999999077 },
            ]}
          />
          <silkscreenpath
            route={[
              { x: -0.88894920000007, y: -0.38097460000005867 },
              { x: -0.88894920000007, y: 0.38097460000005867 },
            ]}
          />
          <silkscreencircle
            pcbX="2.0099782mm"
            pcbY="-0.9602216mm"
            radius="0.150114mm"
          />
          <silkscreentext
            text="{NAME}"
            pcbX="0.283972mm"
            pcbY="2.448689mm"
            anchorAlignment="center"
            fontSize="1mm"
          />
          <courtyardoutline
            outline={[
              { x: -2.1, y: 1.7000097999998616 },
              { x: 2.1, y: 1.7000097999998616 },
              { x: 2.1, y: -1.6999844000000621 },
              { x: -2.1, y: -1.6999844000000621 },
              { x: -2.1, y: 1.7000097999998616 },
            ]}
          />
        </footprint>
      }
      cadModel={{
        objUrl: objPath,
        stepUrl: stepPath,
        pcbRotationOffset: 90,
        modelOriginPosition: {
          x: -0.000012699999956566899,
          y: 0.00006349999989652133,
          z: -0.7,
        },
      }}
      {...props}
    />
  );
};