seveibar/minimal-rp2040

This design features a Raspberry Pi RP2040 microcontroller with integrated decoupling capacitors, QSPI flash memory, crystal oscillator, and USB power circuitry, all mounted on a 65mm by 60mm four-layer PCB.

Usage: To import and use the RP2040 component in a tscircuit project: 1. Import the component: ```tsx import { RP2040 } from "@tsci/seveibar.minimal-rp2040" ``` 2. Use the component in a board: ```tsx <board> <RP2040 name="U3" pcbX={0} pcbY={0} connections={{ IOVDD1: "net.V3V3", // Add other required connections }} /> </board> ``` Key points: - Specify a name for the component - Set position using `pcbX` and `pcbY` - Define necessary network connections in the `connections` prop - Ensure proper power and ground connections

Version
1.0.1
License
unset
Stars
1

lib/Flash.tsx

export const Flash = () => (
  <>
    <chip
      name="U2"
      pcbX={-15}
      pcbY={15}
      footprint="soic8"
      pinLabels={{
        pin1: "QSPI_SS",
        pin2: "QSPI_SCLK",
        pin3: "QSPI_SD0",
        pin4: "QSPI_SD1",
        pin5: "QSPI_SD2",
        pin6: "QSPI_SD3",
        pin7: "GND",
        pin8: "VCC",
      }}
      connections={{
        QSPI_SS: "net.QSPI_SS",
        QSPI_SCLK: "net.QSPI_SCLK",
        QSPI_SD0: "net.QSPI_SD0",
        QSPI_SD1: "net.QSPI_SD1",
        QSPI_SD2: "net.QSPI_SD2",
        QSPI_SD3: "net.QSPI_SD3",
        VCC: "net.V3V3",
        GND: "net.GND",
      }}
    />

    <capacitor
      name="C5"
      footprint="0402"
      capacitance="100nF"
      connections={{ pos: "U2.VCC", neg: "net.GND" }}
    />

    {/* USB_BOOT header */}
    <pinheader
      name="J2"
      pinCount={2}
      gender="female"
      pitch="2.54mm"
      pcbX={-10}
      pcbY={-10}
      schFacingDirection="up"
      pinLabels={["USB_BOOT", "GND"]}
      connections={{
        USB_BOOT: "net.USB_BOOT",
        GND: "net.GND",
      }}
    />

    {/* R1: 1k from USB_BOOT header to QSPI_SS */}
    <resistor
      name="R1"
      resistance="1k"
      footprint="0402"
      connections={{ pin1: "net.USB_BOOT", pin2: "net.QSPI_SS" }}
    />

    {/* R2: DNF pull-up from QSPI_SS to 3V3 (value ~10k) */}
    <resistor
      name="R2"
      resistance="10k"
      footprint="0402"
      connections={{ pin1: "net.QSPI_SS", pin2: "net.V3V3" }}
    />
  </>
)