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/GPIO.tsx
export const GPIO = () => (
<group name="GPIO">
{/* RUN pull-up resistor to 3V3 */}
<resistor
name="R8"
resistance="10k"
footprint="0402"
connections={{ pin1: "net.RUN", pin2: "net.V3V3" }}
/>
<pinheader
name="J3"
pinCount={36}
pcbX={30 - 2.54}
pcbY={0}
doubleRow
footprint="pinrow36_rows2_p2.54mm_id1mm_od1.6mm_female_faceup_nosilk"
pcbOrientation="vertical"
gender="female"
pitch="2.54mm"
schFacingDirection="right"
pinLabels={[
"GPIO0",
"GPIO0",
"GPIO1",
"GPIO1",
"GPIO2",
"GPIO2",
"GPIO3",
"GPIO3",
"GPIO4",
"GPIO4",
"GPIO5",
"GPIO5",
"GPIO6",
"GPIO6",
"GPIO7",
"GPIO7",
"GPIO8",
"GPIO8",
"GPIO9",
"GPIO9",
"GPIO10",
"GPIO10",
"GPIO11",
"GPIO11",
"GPIO12",
"GPIO12",
"GPIO13",
"GPIO13",
"GPIO14",
"GPIO14",
"GPIO15",
"GPIO15",
"GND",
"GND",
]}
connections={{
GPIO0: "net.GPIO0",
GPIO1: "net.GPIO1",
GPIO2: "net.GPIO2",
GPIO3: "net.GPIO3",
GPIO4: "net.GPIO4",
GPIO5: "net.GPIO5",
GPIO6: "net.GPIO6",
GPIO7: "net.GPIO7",
GPIO8: "net.GPIO8",
GPIO9: "net.GPIO9",
GPIO10: "net.GPIO10",
GPIO11: "net.GPIO11",
GPIO12: "net.GPIO12",
GPIO13: "net.GPIO13",
GPIO14: "net.GPIO14",
GPIO15: "net.GPIO15",
GND: "net.GND",
}}
/>
<pinheader
name="J4"
pinCount={36}
doubleRow
gender="female"
pcbX={-30 + 2.54}
pcbY={0}
pitch="2.54mm"
footprint="pinrow36_rows2_p2.54mm_id1mm_od1.6mm_female_faceup_noref"
schFacingDirection="right"
pcbOrientation="vertical"
pinLabels={[
"GPIO29_ADC3",
"GPIO29_ADC3",
"GPIO28_ADC2",
"GPIO28_ADC2",
"GPIO27_ADC1",
"GPIO27_ADC1",
"GPIO26_ADC0",
"GPIO26_ADC0",
"GPIO25",
"GPIO25",
"GPIO24",
"GPIO24",
"GPIO23",
"GPIO23",
"GPIO22",
"GPIO22",
"GPIO21",
"GPIO21",
"GPIO20",
"GPIO20",
"GPIO19",
"GPIO19",
"GPIO18",
"GPIO18",
"GPIO17",
"GPIO17",
"GPIO16",
"GPIO16",
"RUN",
"RUN",
"SWD",
"SWD",
"SWCLK",
"SWCLK",
"GND",
"GND",
]}
connections={{
GPIO29_ADC3: "net.GPIO29_ADC3",
GPIO28_ADC2: "net.GPIO28_ADC2",
GPIO27_ADC1: "net.GPIO27_ADC1",
GPIO26_ADC0: "net.GPIO26_ADC0",
GPIO25: "net.GPIO25",
GPIO24: "net.GPIO24",
GPIO23: "net.GPIO23",
GPIO22: "net.GPIO22",
GPIO21: "net.GPIO21",
GPIO20: "net.GPIO20",
GPIO19: "net.GPIO19",
GPIO18: "net.GPIO18",
GPIO17: "net.GPIO17",
GPIO16: "net.GPIO16",
RUN: "net.RUN",
SWD: "net.SWD",
SWCLK: "net.SWCLK",
GND: "net.GND",
}}
/>
</group>
)