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/ESP32_C3FH4/ESP32_C3FH4.tsx
import objPath from "./ESP32_C3FH4.obj"
import stepPath from "./ESP32_C3FH4.step"
import type { ChipProps } from "@tscircuit/props"
const pinLabels = {
pin1: ["LNA_IN"],
pin2: ["VDD3P31"],
pin3: ["VDD3P32"],
pin4: ["XTAL_32K_P"],
pin5: ["XTAL_32K_N"],
pin6: ["GPIO2"],
pin7: ["CHIP_EN"],
pin8: ["GPIO3"],
pin9: ["MTMS"],
pin10: ["MTDI"],
pin11: ["VDD3P3_RTC"],
pin12: ["MTCK"],
pin13: ["MTDO"],
pin14: ["GPIO8"],
pin15: ["GPIO9"],
pin16: ["GPIO10"],
pin17: ["VDD3P3_CPU"],
pin18: ["VDD_SPI"],
pin19: ["SPIHD"],
pin20: ["SPIWP"],
pin21: ["SPICS0"],
pin22: ["SPICLK"],
pin23: ["SPID"],
pin24: ["SPIQ"],
pin25: ["GPIO18"],
pin26: ["GPIO19"],
pin27: ["U0RXD"],
pin28: ["U0TXD"],
pin29: ["XTAL_N"],
pin30: ["XTAL_P"],
pin31: ["VDDA1"],
pin32: ["VDDA2"],
pin33: ["EP"]
} as const
const pinAttributes = {
pin31: {requiresPower: true},
pin32: {requiresPower: true}
} as const
export const ESP32_C3FH4 = (props: ChipProps<typeof pinLabels>) => {
return (
<chip
pinLabels={pinLabels}
pinAttributes={pinAttributes}
supplierPartNumbers={{
"jlcpcb": [
"C2858491"
]
}}
manufacturerPartNumber="ESP32-C3FH4"
footprint={<footprint>
<smtpad portHints={["pin1"]} pcbX="-2.477516mm" pcbY="1.75006mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin2"]} pcbX="-2.477516mm" pcbY="1.249934mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin3"]} pcbX="-2.477516mm" pcbY="0.750062mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin4"]} pcbX="-2.477516mm" pcbY="0.249936mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin5"]} pcbX="-2.477516mm" pcbY="-0.249936mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin6"]} pcbX="-2.477516mm" pcbY="-0.750062mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin7"]} pcbX="-2.477516mm" pcbY="-1.249934mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin8"]} pcbX="-2.477516mm" pcbY="-1.75006mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin9"]} pcbX="-1.75006mm" pcbY="-2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin10"]} pcbX="-1.249934mm" pcbY="-2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin11"]} pcbX="-0.750062mm" pcbY="-2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin12"]} pcbX="-0.249936mm" pcbY="-2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin13"]} pcbX="0.249936mm" pcbY="-2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin14"]} pcbX="0.750062mm" pcbY="-2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin15"]} pcbX="1.249934mm" pcbY="-2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin16"]} pcbX="1.75006mm" pcbY="-2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin17"]} pcbX="2.477516mm" pcbY="-1.75006mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin18"]} pcbX="2.477516mm" pcbY="-1.249934mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin19"]} pcbX="2.477516mm" pcbY="-0.750062mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin20"]} pcbX="2.477516mm" pcbY="-0.249936mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin21"]} pcbX="2.477516mm" pcbY="0.249936mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin22"]} pcbX="2.477516mm" pcbY="0.750062mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin23"]} pcbX="2.477516mm" pcbY="1.249934mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin24"]} pcbX="2.477516mm" pcbY="1.75006mm" width="0.6500114mm" height="0.2800096mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin25"]} pcbX="1.75006mm" pcbY="2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin26"]} pcbX="1.249934mm" pcbY="2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin27"]} pcbX="0.750062mm" pcbY="2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin28"]} pcbX="0.249936mm" pcbY="2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin29"]} pcbX="-0.249936mm" pcbY="2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin30"]} pcbX="-0.750062mm" pcbY="2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin31"]} pcbX="-1.249934mm" pcbY="2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin32"]} pcbX="-1.75006mm" pcbY="2.477516mm" width="0.2800096mm" height="0.6500114mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<smtpad portHints={["pin33"]} pcbX="0mm" pcbY="0mm" width="3.7999924mm" height="3.7999924mm" shape="rect" solderPasteMargin="-99.9998mm" solderMaskMargin="0.0508mm" />
<solderpaste shape="polygon" points={[{"x":-1.5199867999999697,"y":1.5199867999999697},{"x":1.519986799999856,"y":1.5199867999999697},{"x":1.519986799999856,"y":-1.5199867999999697},{"x":-1.5199867999999697,"y":-1.5199867999999697}]} />
<solderpaste shape="polygon" points={[{"x":-2.8024835999999596,"y":1.8900648000001183},{"x":-2.1524976000000606,"y":1.8900648000001183},{"x":-2.1524976000000606,"y":1.6100552000000334},{"x":-2.8024835999999596,"y":1.6100552000000334}]} />
<solderpaste shape="polygon" points={[{"x":-2.8024835999999596,"y":1.3899388000000954},{"x":-2.1524976000000606,"y":1.3899388000000954},{"x":-2.1524976000000606,"y":1.1099292000000105},{"x":-2.8024835999999596,"y":1.1099292000000105}]} />
<solderpaste shape="polygon" points={[{"x":-2.8024835999999596,"y":0.8900667999998859},{"x":-2.1524976000000606,"y":0.8900667999998859},{"x":-2.1524976000000606,"y":0.6100572000000284},{"x":-2.8024835999999596,"y":0.6100572000000284}]} />
<solderpaste shape="polygon" points={[{"x":-2.8024835999999596,"y":0.38994079999997666},{"x":-2.1524976000000606,"y":0.38994079999997666},{"x":-2.1524976000000606,"y":0.10993120000011913},{"x":-2.8024835999999596,"y":0.10993120000011913}]} />
<solderpaste shape="polygon" points={[{"x":-2.8024835999999596,"y":-0.10993120000000545},{"x":-2.1524976000000606,"y":-0.10993120000000545},{"x":-2.1524976000000606,"y":-0.38994079999997666},{"x":-2.8024835999999596,"y":-0.38994079999997666}]} />
<solderpaste shape="polygon" points={[{"x":-2.8024835999999596,"y":-0.6100572000000284},{"x":-2.1524976000000606,"y":-0.6100572000000284},{"x":-2.1524976000000606,"y":-0.8900667999999996},{"x":-2.8024835999999596,"y":-0.8900667999999996}]} />
<solderpaste shape="polygon" points={[{"x":-2.8024835999999596,"y":-1.1099291999998968},{"x":-2.1524976000000606,"y":-1.1099291999998968},{"x":-2.1524976000000606,"y":-1.3899387999999817},{"x":-2.8024835999999596,"y":-1.3899387999999817}]} />
<solderpaste shape="polygon" points={[{"x":-2.8024835999999596,"y":-1.6100551999999198},{"x":-2.1524976000000606,"y":-1.6100551999999198},{"x":-2.1524976000000606,"y":-1.8900648000001183},{"x":-2.8024835999999596,"y":-1.8900648000001183}]} />
<solderpaste shape="polygon" points={[{"x":-1.8900648000001183,"y":-2.15247219999992},{"x":-1.6100552000000334,"y":-2.15247219999992},{"x":-1.6100552000000334,"y":-2.8024835999999596},{"x":-1.8900648000001183,"y":-2.8024835999999596}]} />
<solderpaste shape="polygon" points={[{"x":-1.3899388000000954,"y":-2.15247219999992},{"x":-1.1099292000001242,"y":-2.15247219999992},{"x":-1.1099292000001242,"y":-2.8024835999999596},{"x":-1.3899388000000954,"y":-2.8024835999999596}]} />
<solderpaste shape="polygon" points={[{"x":-0.8900667999999996,"y":-2.15247219999992},{"x":-0.6100572000000284,"y":-2.15247219999992},{"x":-0.6100572000000284,"y":-2.8024835999999596},{"x":-0.8900667999999996,"y":-2.8024835999999596}]} />
<solderpaste shape="polygon" points={[{"x":-0.38994079999997666,"y":-2.15247219999992},{"x":-0.10993120000000545,"y":-2.15247219999992},{"x":-0.10993120000000545,"y":-2.8024835999999596},{"x":-0.38994079999997666,"y":-2.8024835999999596}]} />
<solderpaste shape="polygon" points={[{"x":0.10993120000000545,"y":-2.15247219999992},{"x":0.389940799999863,"y":-2.15247219999992},{"x":0.389940799999863,"y":-2.8024835999999596},{"x":0.10993120000000545,"y":-2.8024835999999596}]} />
<solderpaste shape="polygon" points={[{"x":0.6100571999999147,"y":-2.15247219999992},{"x":0.8900667999998859,"y":-2.15247219999992},{"x":0.8900667999998859,"y":-2.8024835999999596},{"x":0.6100571999999147,"y":-2.8024835999999596}]} />
<solderpaste shape="polygon" points={[{"x":1.1099291999998968,"y":-2.15247219999992},{"x":1.3899387999999817,"y":-2.15247219999992},{"x":1.3899387999999817,"y":-2.8024835999999596},{"x":1.1099291999998968,"y":-2.8024835999999596}]} />
<solderpaste shape="polygon" points={[{"x":1.6100552000000334,"y":-2.15247219999992},{"x":1.8900648000000047,"y":-2.15247219999992},{"x":1.8900648000000047,"y":-2.8024835999999596},{"x":1.6100552000000334,"y":-2.8024835999999596}]} />
<solderpaste shape="polygon" points={[{"x":2.15247219999992,"y":-1.6100551999999198},{"x":2.8024835999999596,"y":-1.6100551999999198},{"x":2.8024835999999596,"y":-1.8900648000001183},{"x":2.15247219999992,"y":-1.8900648000001183}]} />
<solderpaste shape="polygon" points={[{"x":2.15247219999992,"y":-1.1099291999998968},{"x":2.8024835999999596,"y":-1.1099291999998968},{"x":2.8024835999999596,"y":-1.3899387999999817},{"x":2.15247219999992,"y":-1.3899387999999817}]} />
<solderpaste shape="polygon" points={[{"x":2.15247219999992,"y":-0.6100572000000284},{"x":2.8024835999999596,"y":-0.6100572000000284},{"x":2.8024835999999596,"y":-0.8900667999999996},{"x":2.15247219999992,"y":-0.8900667999999996}]} />
<solderpaste shape="polygon" points={[{"x":2.15247219999992,"y":-0.10993120000000545},{"x":2.8024835999999596,"y":-0.10993120000000545},{"x":2.8024835999999596,"y":-0.38994079999997666},{"x":2.15247219999992,"y":-0.38994079999997666}]} />
<solderpaste shape="polygon" points={[{"x":2.15247219999992,"y":0.38994079999997666},{"x":2.8024835999999596,"y":0.38994079999997666},{"x":2.8024835999999596,"y":0.10993120000011913},{"x":2.15247219999992,"y":0.10993120000011913}]} />
<solderpaste shape="polygon" points={[{"x":2.15247219999992,"y":0.8900667999998859},{"x":2.8024835999999596,"y":0.8900667999998859},{"x":2.8024835999999596,"y":0.6100572000000284},{"x":2.15247219999992,"y":0.6100572000000284}]} />
<solderpaste shape="polygon" points={[{"x":2.15247219999992,"y":1.3899388000000954},{"x":2.8024835999999596,"y":1.3899388000000954},{"x":2.8024835999999596,"y":1.1099292000000105},{"x":2.15247219999992,"y":1.1099292000000105}]} />
<solderpaste shape="polygon" points={[{"x":2.15247219999992,"y":1.8900648000001183},{"x":2.8024835999999596,"y":1.8900648000001183},{"x":2.8024835999999596,"y":1.6100552000000334},{"x":2.15247219999992,"y":1.6100552000000334}]} />
<solderpaste shape="polygon" points={[{"x":1.6100552000000334,"y":2.8024835999999596},{"x":1.8900648000000047,"y":2.8024835999999596},{"x":1.8900648000000047,"y":2.152472200000034},{"x":1.6100552000000334,"y":2.152472200000034}]} />
<solderpaste shape="polygon" points={[{"x":1.1099291999998968,"y":2.8024835999999596},{"x":1.3899387999999817,"y":2.8024835999999596},{"x":1.3899387999999817,"y":2.152472200000034},{"x":1.1099291999998968,"y":2.152472200000034}]} />
<solderpaste shape="polygon" points={[{"x":0.6100571999999147,"y":2.8024835999999596},{"x":0.8900667999998859,"y":2.8024835999999596},{"x":0.8900667999998859,"y":2.152472200000034},{"x":0.6100571999999147,"y":2.152472200000034}]} />
<solderpaste shape="polygon" points={[{"x":0.10993120000000545,"y":2.8024835999999596},{"x":0.389940799999863,"y":2.8024835999999596},{"x":0.389940799999863,"y":2.152472200000034},{"x":0.10993120000000545,"y":2.152472200000034}]} />
<solderpaste shape="polygon" points={[{"x":-0.38994079999997666,"y":2.8024835999999596},{"x":-0.10993120000000545,"y":2.8024835999999596},{"x":-0.10993120000000545,"y":2.152472200000034},{"x":-0.38994079999997666,"y":2.152472200000034}]} />
<solderpaste shape="polygon" points={[{"x":-0.8900667999999996,"y":2.8024835999999596},{"x":-0.6100572000000284,"y":2.8024835999999596},{"x":-0.6100572000000284,"y":2.152472200000034},{"x":-0.8900667999999996,"y":2.152472200000034}]} />
<solderpaste shape="polygon" points={[{"x":-1.3899388000000954,"y":2.8024835999999596},{"x":-1.1099292000001242,"y":2.8024835999999596},{"x":-1.1099292000001242,"y":2.152472200000034},{"x":-1.3899388000000954,"y":2.152472200000034}]} />
<solderpaste shape="polygon" points={[{"x":-1.8900648000001183,"y":2.8024835999999596},{"x":-1.6100552000000334,"y":2.8024835999999596},{"x":-1.6100552000000334,"y":2.152472200000034},{"x":-1.8900648000001183,"y":2.152472200000034}]} />
<silkscreenpath route={[{"x":-2.0804886000000806,"y":2.5761949999999842},{"x":-2.5761949999999842,"y":2.0804886000000806}]} />
<silkscreenpath route={[{"x":2.080488599999967,"y":2.5761949999999842},{"x":2.5761949999999842,"y":2.5761949999999842},{"x":2.5761949999999842,"y":2.0804886000000806}]} />
<silkscreenpath route={[{"x":2.080488599999967,"y":-2.5761949999998706},{"x":2.5761949999999842,"y":-2.5761949999998706},{"x":2.5761949999999842,"y":-2.080488599999967}]} />
<silkscreenpath route={[{"x":-2.0804886000000806,"y":2.5761949999999842},{"x":-2.5761949999999842,"y":2.5761949999999842},{"x":-2.5761949999999842,"y":2.0804886000000806}]} />
<silkscreenpath route={[{"x":-2.0804886000000806,"y":-2.5761949999998706},{"x":-2.5761949999999842,"y":-2.5761949999998706},{"x":-2.5761949999999842,"y":-2.080488599999967}]} />
<silkscreencircle pcbX="-2.899918mm" pcbY="2.29997mm" radius="0.100076mm" />
<silkscreentext text="{NAME}" pcbX="-0.1016mm" pcbY="3.794mm" anchorAlignment="center" fontSize="1mm" />
<courtyardoutline outline={[{"x":-3.0525217000000566,"y":3.0525217000000566},{"x":3.0525217000000566,"y":3.0525217000000566},{"x":3.0525217000000566,"y":-3.0525217000000566},{"x":-3.0525217000000566,"y":-3.0525217000000566},{"x":-3.0525217000000566,"y":3.0525217000000566}]} />
</footprint>}
cadModel={{
objUrl: objPath,
stepUrl: stepPath,
pcbRotationOffset: 0,
modelOriginPosition: { x: 0, y: 0, z: 0 },
}}
{...props}
/>
)
}