Seedbox v0.1 + firmware, generic kit/synth, ROOT/SCALE pages
Some checks failed
check / check (push) Has been cancelled
Some checks failed
check / check (push) Has been cancelled
First commit of the repo. Contents beyond the v0.1 simulator and layout: - Full Pico 2 W firmware (firmware/app, drivers, engine port, host test). - BANK page and 404 mode A/B removed; learned pads play exactly what was learned. - 404/MiniFreak renamed to KIT/SYNTH throughout (jacks, code, sim, docs, layout labels; wiring rebuilt). - ROLL returns to page select after a re-roll; a freshly learned track turns on. - LCD contrast 66. - ROOT and SCALE pages: 21 scales, AUTO = the seed picks; global and sticky. Intended music change: the scale table grew from 8 to 21 and AUTO picks from all of them, so every seed's scale changed. Vectors regenerated with npm run vectors, plus new key-override cases. Flash record is now version 2. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
44
docs/hardware/pinout.md
Normal file
44
docs/hardware/pinout.md
Normal file
@@ -0,0 +1,44 @@
|
||||
# Pinout (Pico 2 W)
|
||||
|
||||
| Pico pin | GPIO | Function | Goes to | Notes |
|
||||
|---|---|---|---|---|
|
||||
| 1 | GP0 | UART0 TX | OUT KIT tip, via 10 Ω | drive strength 8–12 mA |
|
||||
| 2 | GP1 | UART0 RX | 6N137 output (pin 6), 1 kΩ pull-up to 3.3 V | MIDI IN |
|
||||
| 4 | GP2 | matrix row 1 | KICK, KICK 2, SNARE (col 4 empty) | input, pull-up |
|
||||
| 5 | GP3 | matrix row 2 | HAT, HAT 16, PERC, GHOST | input, pull-up |
|
||||
| 6 | GP4 | UART1 TX | OUT SYNTH tip, via 10 Ω | drive strength 8–12 mA |
|
||||
| 7 | GP5 | matrix row 3 | BASS, MEL A, MEL B, PAD | input, pull-up |
|
||||
| 9 | GP6 | matrix column 1 | KICK, HAT, BASS | driven low one at a time, else Hi-Z |
|
||||
| 10 | GP7 | matrix column 2 | KICK 2, HAT 16, MEL A | 〃 |
|
||||
| 11 | GP8 | matrix column 3 | SNARE, PERC, MEL B | 〃 |
|
||||
| 12 | GP9 | matrix column 4 | GHOST, PAD | 〃 |
|
||||
| 14 | GP10 | encoder A (SIA) | encoder | pull-up |
|
||||
| 15 | GP11 | encoder B (SIB) | encoder | pull-up |
|
||||
| 16 | GP12 | encoder push (SW) | encoder | pull-up |
|
||||
| 17 | GP13 | SEED | button to ground | pull-up |
|
||||
| 19 | GP14 | RUN | toggle to ground | pull-up |
|
||||
| 22 | GP17 | SPI0 CSn | LCD SCE (pin 3) | can be tied to GND instead |
|
||||
| 24 | GP18 | SPI0 SCK | LCD SCLK (pin 7) | |
|
||||
| 25 | GP19 | SPI0 TX | LCD DN / MOSI (pin 6) | |
|
||||
| 26 | GP20 | GPIO | LCD D/C (pin 5) | |
|
||||
| 27 | GP21 | GPIO | LCD RST (pin 4) | |
|
||||
| 31 | GP26 | ADC0 | ENERGY pot wiper | |
|
||||
| 32 | GP27 | ADC1 | DRIFT pot wiper | |
|
||||
| 33 | AGND | | pots, left lugs | |
|
||||
| 36 | 3V3 | | 3V3 strip (AB): LCD, encoder, pots, MIDI OUT rings via 33 Ω, opto pull-up | |
|
||||
| 40 | VBUS | | 5 V strip (Z): 6N137 VCC and enable only | powered from the Pico's USB |
|
||||
| 23 | GND | | GND strip (AA) | all Pico GND pins are common |
|
||||
|
||||
Free: GP15, GP16, GP22, GP28 (ADC2), and GP17 if SCE is tied to ground. The LCD backlight runs straight from 3.3 V through 330 Ω; GP22 could dim it later through a transistor.
|
||||
|
||||
## Firmware notes for these pins
|
||||
|
||||
- **Pull-ups, not pull-downs.** RP2350 erratum E9 makes the internal pull-downs unreliable on inputs, so every input here is active-low with a pull-up.
|
||||
- **Drive strength.** GP0 and GP4 drive the MIDI current loops directly, about 6–8 mA. That's above the RP2350's default 4 mA drive, so set them to 8 or 12 mA with `gpio_set_drive_strength()`.
|
||||
- **Matrix.**
|
||||
- Drive one column low at a time and leave the others Hi-Z, then read the three rows. On the idle columns, disable the input buffer (`gpio_set_input_enabled(pin, false)`) or enable the pull-up, so erratum E9 leakage can't hold them at a middle level.
|
||||
- The diode bands point to the column.
|
||||
- A short settle (a few µs) after switching columns helps.
|
||||
- Debounce in software.
|
||||
- **UART.** Both UARTs run at 31 250 baud, 8N1. MIDI IN is only used to learn pads, so it can be polled.
|
||||
- **Nokia 5110.** It runs at 3.3 V on SPI up to 4 MHz.
|
||||
Reference in New Issue
Block a user