36a732f767
Symbol library (SN-L00.lib/): - RP2040-Zero: 18-pin module symbol with all GPIO labels - OLED_128x32_I2C: 4-pin I2C display symbol Footprint library (SN-L00.pretty/): - RP2040-Zero: 2x9 through-hole, 15.24mm spacing, with pin labels - OLED_128x32_I2C: 38x12mm module outline, 4-pin header Auto-loading via fp-lib-table and sym-lib-table.
171 lines
8.9 KiB
Markdown
171 lines
8.9 KiB
Markdown
# SN-L00 KiCad Project
|
||
|
||
## Schematic Overview
|
||
|
||
```
|
||
+12V (from Eurorack)
|
||
│
|
||
▼
|
||
┌─────────────────────────────────────────────────────────────────┐
|
||
│ POWER SECTION │
|
||
│ │
|
||
│ J1 (2x5) D1 (SS14) U1 (AMS1117-3.3) │
|
||
│ Eurorack ──────►Schottky──┬────►LDO────────────► +3.3V │
|
||
│ Header protection │ │ │
|
||
│ C1 C2,C3 │
|
||
│ 10uF 10uF+100nF │
|
||
│ │ │ │
|
||
│ GND GND │
|
||
└─────────────────────────────────────────────────────────────────┘
|
||
|
||
┌─────────────────────────────────────────────────────────────────┐
|
||
│ MCU & DISPLAY │
|
||
│ │
|
||
│ MOD1 (RP2040-Zero) MOD2 (OLED 128x32) │
|
||
│ ┌─────────────┐ ┌──────────┐ │
|
||
│ │ 3V3 5V │ │ GND │ │
|
||
│ │ GND GND │ │ VCC │◄── +3.3V │
|
||
│ │ GP0 GP9 │──SDA───────────►│ SDA │ │
|
||
│ │ GP1 GP8 │──SCL───────────►│ SCL │ │
|
||
│ │ GP2 GP7 │──TRIG_OUT └──────────┘ │
|
||
│ │ GP3 GP6 │──RETURN_IN │
|
||
│ │ GP4 GP5 │──BTN │
|
||
│ │ GP29 3V3 │ │
|
||
│ │ GND GND │ │
|
||
│ └─────────────┘ │
|
||
└─────────────────────────────────────────────────────────────────┘
|
||
|
||
┌─────────────────────────────────────────────────────────────────┐
|
||
│ TRIGGER OUTPUT │
|
||
│ │
|
||
│ GP2 ────► U2 (74LVC1G17) ────► R3 (100Ω) ────► J2 (TRIG OUT) │
|
||
│ Schmitt buffer current limit 3.5mm jack │
|
||
│ │ │
|
||
│ C4 (100nF) to GND │
|
||
└─────────────────────────────────────────────────────────────────┘
|
||
|
||
┌─────────────────────────────────────────────────────────────────┐
|
||
│ RETURN INPUT │
|
||
│ │
|
||
│ J3 (RETURN) ──► R4 (10K) ──┬──► R5/R6 divider ──► U3 ──► GP3 │
|
||
│ 3.5mm jack protection │ (10K/22K = 0.69x) MCP6001 │
|
||
│ │ buffer │
|
||
│ ├── D3 to +3.3V (clamp high) │
|
||
│ └── D4 to GND (clamp low) │
|
||
│ BAT54 Schottky │
|
||
└─────────────────────────────────────────────────────────────────┘
|
||
|
||
┌─────────────────────────────────────────────────────────────────┐
|
||
│ BUTTON │
|
||
│ │
|
||
│ +3.3V ──► R1 (10K) ──┬──► GP4 │
|
||
│ pull-up │ │
|
||
│ SW1 ──► GND │
|
||
│ tactile │
|
||
└─────────────────────────────────────────────────────────────────┘
|
||
|
||
┌─────────────────────────────────────────────────────────────────┐
|
||
│ POWER LED │
|
||
│ │
|
||
│ +3.3V ──► R2 (1K) ──► D2 (Green LED) ──► GND │
|
||
└─────────────────────────────────────────────────────────────────┘
|
||
```
|
||
|
||
## RP2040-Zero Pinout Reference
|
||
|
||
```
|
||
┌─────────────────┐
|
||
5V ──┤ 5V 3V3 ├── 3.3V
|
||
GND ──┤ GND GND ├── GND
|
||
GP29 ──┤ GP29 GP0 ├── I2C SDA → OLED
|
||
GP28 ──┤ GP28 GP1 ├── I2C SCL → OLED
|
||
GP27 ──┤ GP27 GP2 ├── TRIG_OUT → 74LVC1G17
|
||
GP26 ──┤ GP26 GP3 ├── RETURN_IN ← MCP6001
|
||
GP15 ──┤ GP15 GP4 ├── BTN (active low)
|
||
GP14 ──┤ GP14 GP5 ├── (spare)
|
||
└─────────────────┘
|
||
USB-C on bottom
|
||
```
|
||
|
||
## Files
|
||
|
||
- `SN-L00.kicad_pro` - KiCad project file
|
||
- `SN-L00.kicad_sch` - Schematic (open in KiCad 8+)
|
||
- `SN-L00.kicad_pcb` - PCB layout
|
||
- `PCB_LAYOUT.md` - Component placement guide
|
||
|
||
## Custom Libraries
|
||
|
||
### Symbol Library (`SN-L00.lib/`)
|
||
|
||
| Symbol | Description |
|
||
|--------|-------------|
|
||
| `RP2040-Zero` | Waveshare RP2040-Zero module (18 pins) |
|
||
| `OLED_128x32_I2C` | 0.91" OLED display (4 pins: GND, VCC, SCL, SDA) |
|
||
|
||
### Footprint Library (`SN-L00.pretty/`)
|
||
|
||
| Footprint | Description |
|
||
|-----------|-------------|
|
||
| `RP2040-Zero` | 2×9 pin through-hole, 15.24mm row spacing |
|
||
| `OLED_128x32_I2C` | 38×12mm module with 4-pin header |
|
||
|
||
Libraries are auto-loaded via `fp-lib-table` and `sym-lib-table`.
|
||
|
||
### RP2040-Zero Pinout (Footprint)
|
||
|
||
```
|
||
Pin Name │ Pin Name
|
||
─────────────┼─────────────
|
||
1 5V │ 10 3V3
|
||
2 GND │ 11 GND
|
||
3 3V3 │ 12 GP0/SDA
|
||
4 GP29 │ 13 GP1/SCL
|
||
5 GP28 │ 14 GP2
|
||
6 GP27 │ 15 GP3
|
||
7 GP26 │ 16 GP4
|
||
8 GP15 │ 17 GP5
|
||
9 GP14 │ 18 GND
|
||
```
|
||
|
||
### OLED Pinout (Footprint)
|
||
|
||
```
|
||
Pin Name
|
||
───────────
|
||
1 GND
|
||
2 VCC
|
||
3 SCL
|
||
4 SDA
|
||
```
|
||
|
||
## Design Notes
|
||
|
||
### Power
|
||
- Single +12V rail used (no -12V needed)
|
||
- AMS1117-3.3 LDO provides 3.3V for MCU and peripherals
|
||
- SS14 Schottky for reverse polarity protection
|
||
- Total current draw ~20-30mA
|
||
|
||
### Trigger Output
|
||
- 74LVC1G17 provides clean Schmitt-trigger buffered output
|
||
- 100Ω series resistor for short-circuit protection
|
||
- Output: 0-3.3V (compatible with most Eurorack gate inputs)
|
||
|
||
### Return Input
|
||
- Handles 0-10V Eurorack signals safely
|
||
- 10K/22K voltage divider scales to ~0-3.1V
|
||
- Schottky clamp diodes protect against overvoltage
|
||
- MCP6001 rail-to-rail op-amp buffers signal
|
||
- Threshold set in firmware (~1.5V default)
|
||
|
||
### I2C
|
||
- 400kHz I2C to OLED display
|
||
- No external pull-ups needed (internal to OLED module)
|
||
|
||
## Opening the Project
|
||
|
||
1. Install KiCad 8.0+
|
||
2. Open `SN-L00.kicad_pro`
|
||
3. Schematic editor opens automatically
|