(04)Project / First complete build← Project index

Orange GrimReach MIDI controller with sixteen knobs and four touch sensors

USB MIDI controller

GrimReach

Sixteen physical knobs multiplied across four capacitive-touch banks to control 64 MIDI CC parameters from one compact surface.

—Arduino MegaC++16 potentiometers4 touch banksUSB Type-B3D printing

At a glance
SignificanceFirst complete hardware project
ControllerArduino Mega
Inputs16 knobs + 4 capacitive touch sensors
Addressable controls64 MIDI CC mappings
FirmwareC++ developed in Arduino IDE
ConnectionUSB Type-B for power and data
EnclosureCustom 3D-printed housing

(01)Starting point

GrimReach was my first complete device: the project where code, electronics, interaction, fabrication, and visual identity first had to meet inside one working enclosure.

The design targets software instruments and effects that expose far more parameters than a small physical controller can usually reach. Sixteen knobs offer immediate tactile access; four capacitive-touch sensors select control banks; and the same surface therefore addresses 64 different MIDI CC assignments.

(02)Control architecture16 physical / 64 logical

A / Surface

Sixteen knobs

A four-by-four control matrix provides enough physical resolution for simultaneous adjustment while keeping every parameter within one hand’s reach.

B / Expansion

Four touch banks

Four capacitive sensors switch the active MIDI layer. Each bank remaps the same sixteen knobs to a distinct set of controller numbers.

C / Capacity

64 CC targets

The banked architecture multiplies a compact control surface into 64 addressable parameters without adding 48 more physical potentiometers.

D / Firmware

C++ mapping logic

Code written in C++ and flashed through the Arduino IDE scans controls, tracks bank state, and emits the corresponding MIDI controller data.

E / Host

USB MIDI

A USB Type-B connection carries both power and data. The controller can be mapped inside a DAW or plug-in to synths, effects, amplifier models, and mix parameters.

F / Mechanics

Printed enclosure

The orange 3D-printed housing organizes the grid, exposes the touch regions, supports the hardware, and gives the first build a distinct identity.

  1. Touch bankOne of four CC layers becomes active.
  2. Knob inputA physical control changes position.
  3. Arduino scanFirmware reads value and current bank.
  4. CC mappingThe pair resolves to one of 64 controls.
  5. USB hostThe mapped software parameter responds.

(03)Product thinking

More control without more clutter

The central tradeoff is density versus directness. Sixteen dedicated knobs remain visible and tactile; banking expands the reachable parameter set without making the enclosure impractically large. Touch sensing keeps bank changes quick and removes four additional mechanical switches from the surface.

A first project with a complete finish line

GrimReach established the working method that shaped every later project. A successful prototype was not enough: the firmware had to behave reliably, the USB connection had to carry the complete experience, the enclosure had to be fabricated, and the final device had to be physically usable.

The first build established the standard: finish the whole object.

GrimReach began the progression from a 64-control MIDI surface to analog audio circuits, configurable floor control, and finally the upgradable BonesFX embedded audio platform.