AnasSarkiz/magnetic-shutter-remote-r8
A USB‑C rechargeable battery-powered ESP32‑C3 wireless controller with Li‑ion charging, protected 3.3‑V buck‑boost regulation, thermal/safety monitoring, status LEDs, buttons, programming UART, crystal clock, and 2.4‑GHz antenna matching network.
- Version
- 0.4.0-prototype
- License
- unset
- Stars
- 0
imports/TS24CA/TS24CA.tsx
import objPath from "./TS24CA.obj"
import stepPath from "./TS24CA.step"
import type { PushButtonProps } from "@tscircuit/props"
const pinLabels = {
pin1: ["pin1"],
pin2: ["pin2"],
pin3: ["pin3"],
pin4: ["pin4"]
} as const
export const TS24CA = (props: PushButtonProps<typeof pinLabels>) => {
const { name = "SW1", ...restProps } = props
return (
<pushbutton
name={name}
pinLabels={pinLabels}
supplierPartNumbers={{
"jlcpcb": [
"C393942"
]
}}
manufacturerPartNumber="TS24CA"
footprint={<footprint>
<hole pcbX="0.8498332mm" pcbY="0.3000121mm" diameter="0.700024mm" />
<hole pcbX="-0.8501888mm" pcbY="0.3000121mm" diameter="0.700024mm" />
<smtpad portHints={["pin4"]} points={[{x: "-1.5998952mm", y: "0.9499727mm"}, {x: "-1.5998952mm", y: "1.5999587mm"}, {x: "-1.5998952mm", y: "1.5999587mm"}, {x: "-2.6498804mm", y: "1.5999587mm"}, {x: "-2.6498804mm", y: "1.5999587mm"}, {x: "-2.6498804mm", y: "0.2999359mm"}, {x: "-2.6498804mm", y: "0.2999359mm"}, {x: "-1.9999198mm", y: "0.2999359mm"}, {x: "-1.9999198mm", y: "0.2999359mm"}, {x: "-1.9999198mm", y: "0.9499473mm"}, {x: "-1.9999198mm", y: "0.9499473mm"}, {x: "-1.5999206mm", y: "0.9499473mm"}, {x: "-1.5999206mm", y: "0.9499473mm"}, {x: "-1.5998952mm", y: "0.9499727mm"}]} shape="polygon" solderPasteMargin="0mm" solderMaskMargin="0.0510032mm" />
<smtpad portHints={["pin3"]} points={[{x: "2.6498804mm", y: "0.2999359mm"}, {x: "2.6498804mm", y: "1.5999587mm"}, {x: "2.6498804mm", y: "1.5999587mm"}, {x: "1.5998952mm", y: "1.5999587mm"}, {x: "1.5998952mm", y: "1.5999587mm"}, {x: "1.5998952mm", y: "0.9499727mm"}, {x: "1.5998952mm", y: "0.9499727mm"}, {x: "1.5999206mm", y: "0.9499473mm"}, {x: "1.5999206mm", y: "0.9499473mm"}, {x: "1.9999198mm", y: "0.9499473mm"}, {x: "1.9999198mm", y: "0.9499473mm"}, {x: "1.9999198mm", y: "0.2999359mm"}, {x: "1.9999198mm", y: "0.2999359mm"}, {x: "2.6498804mm", y: "0.2999359mm"}]} shape="polygon" solderPasteMargin="0mm" solderMaskMargin="0.0510032mm" />
<smtpad portHints={["pin2"]} pcbX="1.6999712mm" pcbY="-0.9999599mm" width="0.5999988mm" height="1.1999976mm" shape="rect" solderPasteMargin="0mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin1"]} pcbX="-1.7000728mm" pcbY="-0.9999599mm" width="0.5999988mm" height="1.1999976mm" shape="rect" solderPasteMargin="0mm" solderMaskMargin="0.0508mm" />
<silkscreenpath route={[{"x":-2.276982999999859,"y":0.06879590000005464},{"x":-2.276982999999859,"y":-1.0999089000000595}]} />
<silkscreenpath route={[{"x":2.275001800000041,"y":0.06879590000005464},{"x":2.275001800000041,"y":-1.0999089000000595}]} />
<silkscreenpath route={[{"x":-0.8890761999998631,"y":-1.0999089000000595},{"x":-1.1690095999999812,"y":-1.0999089000000595}]} />
<silkscreenpath route={[{"x":0.8889238000000432,"y":-1.0999089000000595},{"x":1.1687048000000004,"y":-1.0999089000000595}]} />
<silkscreenpath route={[{"x":0.999921800000152,"y":2.4000333000000182},{"x":0.999921800000152,"y":1.2000611000000845}]} />
<silkscreenpath route={[{"x":-1.0000741999998581,"y":2.4000333000000182},{"x":-1.0000741999998581,"y":1.2000611000000845}]} />
<silkscreenpath route={[{"x":-1.0000741999998581,"y":2.4000333000000182},{"x":0.999921800000152,"y":2.4000333000000182}]} />
<silkscreenpath route={[{"x":-0.8890761999998631,"y":-1.0999089000000595},{"x":0.8889238000000432,"y":-1.0999089000000595}]} />
<silkscreentext text="{NAME}" pcbX="0.0073152mm" pcbY="3.5316561mm" anchorAlignment="center" fontSize="1mm" />
<courtyardoutline outline={[{"x":-2.8998803999999154,"y":2.724023500000044},{"x":2.899880400000029,"y":2.724023500000044},{"x":2.899880400000029,"y":-1.849958700000002},{"x":-2.8998803999999154,"y":-1.849958700000002},{"x":-2.8998803999999154,"y":2.724023500000044}]} />
</footprint>}
cadModel={{
objUrl: objPath,
stepUrl: stepPath,
pcbRotationOffset: 0,
modelOriginPosition: { x: 0.00006349999989652133, y: -1.0240284000000113, z: -0.8600008000000001 },
}}
{...restProps}
/>
)
}