techmannih/smart-pet-feeder
This code renders a physical PCB with a 1kΩ resistor (R1) and a 1000pF capacitor (C1) connected to R1's pin1 using 0402 footprint components.
- Version
- 0.0.1
- License
- unset
- Stars
- 0
index.tsx
PCB
Schematic
import { TYPE_C_31_M_12 } from "./TYPE_C_31_M_12"
const buzzerSymbol = (
<symbol>
<port name="pin1" schX={-0.9} schY={0.35} direction="left" />
<port name="pin2" schX={-0.9} schY={-0.35} direction="left" />
<schematicline
x1={-0.9}
y1={0.35}
x2={-0.45}
y2={0.35}
strokeWidth={0.05}
/>
<schematicline
x1={-0.9}
y1={-0.35}
x2={-0.45}
y2={-0.35}
strokeWidth={0.05}
/>
<schematicline
x1={-0.45}
y1={-0.52}
x2={-0.45}
y2={0.52}
strokeWidth={0.05}
/>
<schematicarc
center={{ x: -0.45, y: 0 }}
radius={0.5}
startAngleDegrees={90}
endAngleDegrees={270}
strokeWidth={0.05}
/>
</symbol>
)
export default () => (
<board width={85} height={50} borderRadius={3.2}>
<platedhole
name="H1"
pcbX={-38.5}
pcbY={-20.5}
holeDiameter={3.2}
outerDiameter={6.6}
shape="circle"
/>
<TYPE_C_31_M_12
name="J3"
pcbX={-36.5}
pcbY={-10.5}
pcbRotation={270}
schX="3"
schY="-1"
/>
<platedhole
name="H2"
pcbX={38.5}
pcbY={-20.5}
holeDiameter={3.2}
outerDiameter={6.6}
shape="circle"
/>
<platedhole
name="H3"
pcbX={-38.5}
pcbY={20.5}
holeDiameter={3.2}
outerDiameter={6.6}
shape="circle"
/>
<platedhole
name="H4"
pcbX={38.5}
pcbY={20.5}
holeDiameter={3.2}
outerDiameter={6.6}
shape="circle"
/>
<resistor
name="R1"
resistance="1k"
footprint="0603"
pcbX={12}
pcbY={8}
schX="-13"
schY="0"
schRotation="270deg"
schSectionName="user buttons"
/>
<capacitor
name="C1"
capacitance="100nF"
footprint="0603"
pcbX={15}
pcbY={8}
schX="-13"
schY="-2"
schRotation="270deg"
schSectionName="user buttons"
/>
<pushbutton
name="SW1"
pcbX={16}
pcbY={15}
pcbRotation={90}
displayName=""
schX="-12"
schY="-1"
schSectionName="user buttons"
footprint="kicad:Button_Switch_SMD/SW_SPST_TL3342"
/>
<capacitor
name="C2"
capacitance="100nF"
footprint="0603"
pcbX={15}
pcbY={-21}
schX="-13"
schY="-7"
schRotation="270deg"
schSectionName="user buttons"
/>
<capacitor
name="C3"
capacitance="100nF"
footprint="0603"
pcbX={15}
pcbY={-8}
schX="-13"
schY="-12"
schRotation="270deg"
schSectionName="user buttons"
/>
<resistor
name="R2"
resistance="1k"
footprint="0603"
pcbX={12}
pcbY={-21}
pcbRotation={0}
schX="-13"
schY="-5"
schRotation="270deg"
schSectionName="user buttons"
/>
<resistor
name="R3"
resistance="1k"
footprint="0603"
pcbX={12}
pcbY={-8}
schX="-13"
schY="-10"
schRotation="270deg"
schSectionName="user buttons"
/>
<pushbutton
name="SW2"
pcbX={16}
pcbY={-15.4}
pcbRotation={90}
displayName=""
footprint="kicad:Button_Switch_SMD/SW_SPST_TL3342"
schX="-12"
schY="-6"
schSectionName="user buttons"
/>
<pushbutton
name="SW3"
pcbX={16}
pcbY={0}
pcbRotation={90}
displayName=""
footprint="kicad:Button_Switch_SMD/SW_SPST_TL3342"
schX="-12"
schY="-11"
schSectionName="user buttons"
/>
<schematicsection name="user buttons" displayName="User buttons" />
<chip
name="U2"
footprint="dip16_w7.62mm"
pcbX={24.6}
pcbY={7}
pinLabels={{
pin1: "EN1_2",
pin2: "1A",
pin3: "1Y",
pin4: "GND4",
pin5: "GND5",
pin6: "2Y",
pin7: "2A",
pin8: "VCC2",
pin9: "EN3_4",
pin10: "3A",
pin11: "3Y",
pin12: "GND12",
pin13: "GND13",
pin14: "4Y",
pin15: "4A",
pin16: "VCC1",
}}
schX="-5"
schY="-5"
/>
<chip
name="U5"
footprint="kicad:Package_SO/SSOP-8_3.9x5.05mm_P1.27mm"
pcbX={-15.7}
pcbY={-3}
pinLabels={{
pin1: "UD+",
pin2: "UD-",
pin3: "GND",
pin4: "N_RTS",
pin5: "VCC",
pin6: "TXD",
pin7: "RXD",
pin8: "V3",
}}
schX="6"
schY="-5"
/>
<chip
name="U3"
pcbX={-4.5}
pcbY={-16.6}
layer="bottom"
displayName=""
footprint="kicad:Connector_JST/JST_XH_B4B-XH-A_1x04_P2.50mm_Vertical"
pinLabels={{
pin1: "SCL",
pin2: "SDA",
pin3: "VCC",
pin4: "GND",
}}
schX="-1"
schY="4.5"
/>
<chip
name="U4"
pcbX={-15}
pcbY={11}
displayName=""
pcbRotation={90}
footprint="kicad:Connector_PinHeader_2.54mm/PinHeader_1x04_P2.54mm_Vertical"
pinLabels={{
pin1: "GND",
pin2: "VDD",
pin3: "SCL",
pin4: "SDA",
}}
schX="2"
schY="4"
schRotation="270deg"
/>
<resistor
name="R4"
resistance="4.7k"
footprint="0603"
pcbX={-15.8}
pcbY={16}
schX="-9"
schY="-1"
schRotation="270deg"
/>
<resistor
name="R5"
resistance="4.7k"
footprint="0603"
pcbX={-15.8}
pcbY={14.2}
schX="-8"
schY="-1"
schRotation="270deg"
/>
<resistor
name="R6"
resistance="1k"
footprint="0603"
pcbX={1}
pcbY={-2.5}
pcbRotation={90}
schX="-10"
schY="3.5"
/>
<resistor
name="R7"
resistance="100k"
footprint="0603"
pcbX={0}
pcbY={0}
pcbRotation={0}
schX="-8.5"
schY="2.5"
schRotation="270deg"
/>
<resistor
name="R8"
resistance="5.1k"
footprint="0603"
pcbX={-24.2}
pcbY={-5.5}
schX="5"
schY="-2"
schRotation="270deg"
/>
<resistor
name="R9"
resistance="5.1k"
footprint="0603"
pcbX={-23.2}
pcbY={-2.5}
schX="6"
schY="-2"
schRotation="270deg"
/>
<capacitor
name="C4"
capacitance="100nF"
footprint="0603"
pcbX={27.5}
pcbY={19.2}
schX="-6"
schY="-2"
schRotation="270deg"
/>
<capacitor
name="C5"
capacitance="1uF"
footprint="0603"
pcbX={18.8}
pcbY={-7}
pcbRotation={0}
schX="-4"
schY="-2"
schRotation="270deg"
/>
<capacitor
name="C6"
capacitance="100nF"
footprint="0603"
pcbX={-23}
pcbY={11.2}
pcbRotation={0}
schX="5"
schY="4"
schRotation="270deg"
/>
<capacitor
name="C7"
capacitance="100nF"
footprint="0603"
pcbX={-21}
pcbY={-12.8}
schX="8"
schY="-2"
schRotation="270deg"
/>
<capacitor
name="C8"
capacitance="10uF"
footprint="0603"
pcbX={-24.5}
pcbY={-12.8}
schX="9"
schY="-2"
schRotation="270deg"
/>
<capacitor
name="C9"
capacitance="100nF"
footprint="0603"
pcbX={-15.5}
pcbY={2}
pcbRotation={0}
schX="8"
schY="-5"
schRotation="270deg"
/>
<capacitor
name="C10"
capacitance="330uF"
pcbX={24.6}
pcbY={-11}
displayName=""
footprint="kicad:Capacitor_SMD/CP_Elec_6.3x7.7"
schX="8"
schY="-13"
schRotation="270deg"
/>
<capacitor
name="C11"
capacitance="100nF"
footprint="0603"
pcbX={-15.5}
pcbY={-7}
pcbRotation={0}
schX="9"
schY="-5"
schRotation="270deg"
/>
<fuse
name="F1"
currentRating="500mA"
voltageRating="32V"
footprint="1206"
pcbX={-24.5}
pcbY={-9}
pcbRotation={0}
schX="5"
schY="0"
/>
<pinheader
name="J1"
pinCount={4}
footprint="pinrow4_p2.5mm"
pcbRotation={90}
pcbX={38.5}
pcbY={0}
layer="bottom"
displayName=""
pinLabels={["L2B", "L2A", "L1B", "L1A"]}
schX="0"
schY="-5"
/>
<pinheader
name="J2"
pinCount={4}
footprint="kicad:Connector_JST/JST_XH_B4B-XH-A_1x04_P2.50mm_Vertical"
pcbX={-18}
pcbY={-16.7}
layer="bottom"
displayName=""
pinLabels={["GND", "D-", "D+", "VUSB"]}
schX="0"
schY="-8"
/>
<pinheader
name="J4"
pinCount={2}
footprint="kicad:Connector_JST/JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical"
pcbX={25.7}
pcbY={-19.4}
layer="bottom"
displayName=""
pinLabels={["GND", "VCC"]}
schX="6"
schY="-13"
/>
<pushbutton
name="SW4"
pcbX={-37}
pcbY={12}
displayName=""
footprint="kicad:Button_Switch_SMD/SW_Tactile_SPST_NO_Straight_CK_PTS636Sx25SMTRLFS"
schX="6"
schY="4"
schRotation="270deg"
/>
<pushbutton
name="SW5"
pcbX={-37}
pcbY={0}
displayName=""
footprint="kicad:Button_Switch_SMD/SW_Tactile_SPST_NO_Straight_CK_PTS636Sx25SMTRLFS"
kicadFootprintMetadata={{
footprintName:
"Button_Switch_SMD:SW_Tactile_SPST_NO_Straight_CK_PTS636SX25SMTR_LFS",
generator: "tscircuit",
layer: "F.Cu",
attributes: {
smd: true,
},
}}
schX="7"
schY="4"
schRotation="270deg"
/>
<chip
name="BZ1"
pcbX={2.8}
pcbY={11}
displayName=""
footprint="kicad:Buzzer_Beeper/MagneticBuzzer_PUI_AT-0927-TT-6-R"
symbol={buzzerSymbol}
pinLabels={{
pin1: "BZ+",
pin2: "BZ-",
}}
schX="-6"
schY="5"
/>
<transistor
name="Q1"
type="npn"
pcbX={1.2}
pcbY={3}
displayName=""
footprint="kicad:Package_TO_SOT_THT/TO-92_Inline"
schX="-7.5"
schY="3.5"
schRotation="270deg"
/>
<solderjumper
name="SJ1"
footprint="solderjumper3"
pinCount={3}
pcbX={38.5}
pcbY={-14}
pcbRotation={90}
/>
{/* <trace from=".R1 > .pin1" to="net.V3_3" />
<trace from=".R1 > .pin2" to="net.BUTTON_PLUS" />
<trace from=".C1 > .pin1" to="net.BUTTON_PLUS" />
<trace from=".C1 > .pin2" to="net.GND" />
<trace from=".SW1 > .pin1" to="net.BUTTON_PLUS" />
<trace from=".SW1 > .pin2" to="net.GND" />
<trace from=".R2 > .pin1" to="net.V3_3" />
<trace from=".R2 > .pin2" to="net.BUTTON_MINUS" />
<trace from=".C2 > .pin1" to="net.BUTTON_MINUS" />
<trace from=".C2 > .pin2" to="net.GND" />
<trace from=".SW2 > .pin1" to="net.BUTTON_MINUS" />
<trace from=".SW2 > .pin2" to="net.GND" />
<trace from=".R3 > .pin1" to="net.V3_3" />
<trace from=".R3 > .pin2" to="net.BUTTON_OK" />
<trace from=".C3 > .pin1" to="net.BUTTON_OK" />
<trace from=".C3 > .pin2" to="net.GND" />
<trace from=".SW3 > .pin1" to="net.BUTTON_OK" />
<trace from=".SW3 > .pin2" to="net.GND" />
<trace from=".R4 > .pin1" to="net.V3_3" />
<trace from=".R4 > .pin2" to="net.SCL" />
<trace from=".R5 > .pin1" to="net.V3_3" />
<trace from=".R5 > .pin2" to="net.SDA" />
<trace from=".U3 > .pin1" to="net.SCL" />
<trace from=".U3 > .pin2" to="net.SDA" />
<trace from=".U3 > .pin3" to="net.V3_3" />
<trace from=".U3 > .pin4" to="net.GND" />
<trace from=".U4 > .pin1" to="net.GND" />
<trace from=".U4 > .pin2" to="net.V3_3" />
<trace from=".U4 > .pin3" to="net.SCL" />
<trace from=".U4 > .pin4" to="net.SDA" />
<trace from=".R6 > .pin1" to="net.BUZZER" />
<trace from=".R6 > .pin2" to="net.BUZZER_BASE" />
<trace from=".R7 > .pin1" to="net.BUZZER_BASE" />
<trace from=".R7 > .pin2" to="net.GND" />
<trace from=".Q1 > .pin1" to="net.GND" />
<trace from=".Q1 > .pin2" to="net.BUZZER_BASE" />
<trace from=".Q1 > .pin3" to="net.BUZZER_NEG" />
<trace from=".BZ1 > .pin1" to="net.V5" />
<trace from=".BZ1 > .pin2" to="net.BUZZER_NEG" />
<trace from=".U2 > .pin16" to="net.V5" />
<trace from=".U2 > .pin8" to="net.VCC" />
<trace from=".U2 > .pin4" to="net.GND" />
<trace from=".U2 > .pin5" to="net.GND" />
<trace from=".U2 > .pin12" to="net.GND" />
<trace from=".U2 > .pin13" to="net.GND" />
<trace from=".U2 > .pin1" to="net.EN" />
<trace from=".U2 > .pin9" to="net.EN" />
<trace from=".U2 > .pin2" to="net.MOTOR_0" />
<trace from=".U2 > .pin7" to="net.MOTOR_1" />
<trace from=".U2 > .pin10" to="net.MOTOR_2" />
<trace from=".U2 > .pin15" to="net.MOTOR_3" />
<trace from=".U2 > .pin3" to="net.L1A" />
<trace from=".U2 > .pin6" to="net.L1B" />
<trace from=".U2 > .pin11" to="net.L2A" />
<trace from=".U2 > .pin14" to="net.L2B" />
<trace from=".J1 > .pin4" to="net.L1A" />
<trace from=".J1 > .pin3" to="net.L1B" />
<trace from=".J1 > .pin2" to="net.L2A" />
<trace from=".J1 > .pin1" to="net.L2B" />
<trace from=".C4 > .pin1" to="net.V5" />
<trace from=".C4 > .pin2" to="net.GND" />
<trace from=".C5 > .pin1" to="net.VCC" />
<trace from=".C5 > .pin2" to="net.GND" />
<trace from=".J2 > .pin4" to="net.VUSB" />
<trace from=".J2 > .pin3" to="net.D_PLUS" />
<trace from=".J2 > .pin2" to="net.D_MINUS" />
<trace from=".J2 > .pin1" to="net.GND" />
<trace from=".F1 > .pin1" to="net.VUSB" />
<trace from=".F1 > .pin2" to="net.V5" />
<trace from=".C7 > .pin1" to="net.V5" />
<trace from=".C7 > .pin2" to="net.GND" />
<trace from=".C8 > .pin1" to="net.V5" />
<trace from=".C8 > .pin2" to="net.GND" />
<trace from=".R8 > .pin1" to="net.CC1" />
<trace from=".R8 > .pin2" to="net.GND" />
<trace from=".R9 > .pin1" to="net.CC2" />
<trace from=".R9 > .pin2" to="net.GND" />
<trace from=".U5 > .pin1" to="net.D_PLUS" />
<trace from=".U5 > .pin2" to="net.D_MINUS" />
<trace from=".U5 > .pin3" to="net.GND" />
<trace from=".U5 > .pin5" to="net.V3_3" />
<trace from=".U5 > .pin8" to="net.V3_3" />
<trace from=".U5 > .pin7" to="net.PA2_TX2" />
<trace from=".U5 > .pin6" to="net.PA3_RX2" />
<trace from=".C9 > .pin1" to="net.V3_3" />
<trace from=".C9 > .pin2" to="net.GND" />
<trace from=".C11 > .pin1" to="net.V3_3" />
<trace from=".C11 > .pin2" to="net.GND" />
<trace from=".C6 > .pin1" to="net.RESET" />
<trace from=".C6 > .pin2" to="net.GND" />
<trace from=".SW4 > .pin1" to="net.RESET" />
<trace from=".SW4 > .pin2" to="net.GND" />
<trace from=".SW5 > .pin1" to="net.V3_3" />
<trace from=".SW5 > .pin2" to="net.BOOT0" />
<trace from=".J4 > .pin1" to="net.GND" />
<trace from=".J4 > .pin2" to="net.VCC" />
<trace from=".C10 > .pin1" to="net.VCC" />
<trace from=".C10 > .pin2" to="net.GND" /> */}
</board>
)