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" }}
/>
</>
)