Not connected

SPOKE
Board Configurator

Assign MIDI notes, chords, or keyboard shortcuts to each of your 27 touch sensors — then save the generated code directly onto your board.

Before you begin

  • Plug in your SPOKE board via USB. It should appear as both a MIDI device and a USB drive called SPOKE.
  • Use Chrome, Edge or Opera — these support Web MIDI (for auto pin-detection) and the File System Access API (for saving to the board).
  • Already configured your board before? No problem — we'll offer to reset it to the default pin mapping first, so touch-detection works reliably.

Connect Your Board

We'll connect via Web MIDI so your board can automatically detect which pin you're touching during setup.

🔄 Has this board been configured before?

Auto pin-detection only works while the board is running the default firmware — the one where each pin sends a known, fixed MIDI note. If this board was set up with this tool before (or with any other code), touching a pin may send a different note, an HID keypress, or nothing over MIDI at all — which breaks detection below.

If you're not sure, it's safe to reset first. This only affects pin detection — whatever you assign in the next steps will overwrite it when you save at the end.

Connect via Web MIDI
Your browser will ask permission to access MIDI devices

Configure Your Pins

Progress 0 / 27 configured

Pin map — click any pin to configure it

⚡ Quick Setup

Bulk-assign a whole keyboard layout in one click — great starting points for gaming or typing.

🎵 Music Quick Setup

Fill a run of pins with the ascending notes of a scale — pick a key, a mode, and how many pads.

💡 LED Behavior

Customize the startup animation, idle color, and touch color for the NeoPixel under each pad.

LED Behavior

Your board has a NeoPixel under each touch pad. Set what they do on power-up, at rest, and when touched.

Startup Animation

Idle Color — pad not touched

Touch Color — pad currently touched

Brightness

3%

Per-Pad Colors — optional, e.g. color-code by function

Click a pad to give it its own idle color — handy for telling movement, actions, and mouse pads apart at a glance. Pads without an override just use the Idle Color above.

Quick Setup

Bulk-assign a preset keyboard layout starting from GP1. Each preset overwrites any pin it touches — everything else stays as-is.

Assign a Scale

Fills consecutive pins, starting at GP1, with the ascending notes of a scale — great for a quick keyboard-style run across the board.

—

Touch a Pin

Touch any pin on your board
Listening for MIDI input…

Or select a pin manually

What should this pin do?

Configuring pin GP1. Choose a mode below.

What type of MIDI?

Choose a Note

Piano — scale tones highlighted

Choose a Chord

Notes in chord

Piano — chord tones highlighted

Control Change (CC)

Send a MIDI CC message instead of a note — useful for mod wheel, sustain, expression, or filter cutoff.

Sends: —

What kind of input?

Choose a Key


Special Keys


Function Keys


Media & Consumer Keys (uses ConsumerControl in CircuitPython)

Create a Shortcut

1. Modifier Keys (select one or more)

2. Main Key


Or pick a common shortcut

Shortcut: —

Mouse

Click

Move Cursor

Pick a direction — touching this pin will nudge the mouse cursor that way.

Review Your Setup

Check all 27 pin assignments. Use Edit to change any pin before generating code.

# Pin Type Assignment Actions

Your Code Is Ready

Review the generated CircuitPython below, then save it to your SPOKE drive.

code.py — CircuitPython

  

Save to Your Board

Click Save to Board, then select the SPOKE drive when the folder picker opens. This will overwrite code.py with your new configuration.