User Manual

Complete reference for DrumStrum — setup, configuration, and all features.

What is DrumStrum?

DrumStrum is a MIDI processor that turns your drum pads into a melodic instrument. A chord source — keyboard, pad controller, or sequencer — defines the current harmony. Your drum pads then trigger individual notes from that chord in real time, like a guitarist's fretting hand and strumming hand working together.

Chord Source keyboard · pad · sequencer Strum Source drum pads · triggers chord notes pad hits DrumStrum chord lookup · transform · route virtual MIDI port transformed MIDI DAW Ableton · Logic · etc. Hardware Synth direct · low latency

Additional inputs — sustain and expression pedals, a transpose channel, chord expand CC — can all feed DrumStrum simultaneously. These are covered in the Configuration section.

DrumStrum lives in your Mac menu bar. It runs silently in the background, receiving MIDI from your controllers, transforming it, and routing the output to your DAW, synth, or any other MIDI destination. It creates its own virtual MIDI port called DrumStrum — just point your DAW at that port and you're connected.

Everything flows out through that one virtual port, but DrumStrum can populate many MIDI channels simultaneously — each carrying a different type of content for a different destination in your DAW or hardware rig. And the resulting channel's content is based on your real time playing, so mixed with suitable sounds, your playing is conducting an entire ensemble, orchestra, or soundscape!

DrumStrum one virtual MIDI port out → many channels Ch 1 Chord Passthrough raw chord notes forwarded to a synth or DAW track Ch 3 Strums transformed chord tones triggered by pad hits Ch 4 Bass Notes root, walking bass, and pedal tones Ch 2 Root Detect detected chord root · also available as CC pitch class (0–11) Ch 5 Remapped Notes Note Remap output · GM → Ableton, pad → VST layout Ch 10 GM Drums standard drum layout passthrough · with or without sustain Ch 9 Alternate Drum Map pads remapped to Ableton Core, custom layout, or any target map Any Sustain & CC Routing pedal · expression · CC fan-out, remap, toggle · CC ↔ Note conversion Any VST & Synth Actions fixed note triggers for instrument functions · special VST key ranges

Channel numbers above are examples — all assignments are configurable.

Requirements

No extra drivers or virtual MIDI software required on Mac — DrumStrum creates its own virtual port automatically.

* Windows requires a free virtual MIDI port utility (such as loopMIDI) to create the virtual port DrumStrum uses for output.

Installation

  1. Download the .dmg from the Download page.
  2. Open the DMG and drag DrumStrum to your Applications folder.
  3. Launch DrumStrum. On first run, macOS may ask you to confirm opening an app from the internet — click Open.
  4. DrumStrum appears as a drum icon in your menu bar. Click it to open the configuration window.
Tip: DrumStrum is a menu bar app — it has no Dock icon and no main window. Everything lives behind the menu bar icon.
Tip: The config window has three display themes — Dark, Light, and High Contrast. Click the theme button (☽/☀/◐) in the top-right of the window to cycle between them. High Contrast mode uses a larger base font and yellow-on-black colors, designed for low-vision use or brightly-lit environments.

First Launch

When you open the config window, you'll land on the Transformers tab. This is the main workspace where you define how your drum pads are mapped to musical actions.

DrumStrum needs two things to make music: a chord source and a strum source. The chord source is any MIDI device playing notes on the chord channel — typically a keyboard or sequencer. The strum source is your drum pad controller, configured as a Strummer transformer. In the Chord Entry card at the top of the Transformers tab, set the chord channel to match what your keyboard sends. Then create a Strummer transformer and set its MIDI In channel to match your drum pads.

The typical setup flow is:

  1. In the Chord Entry card, set Chord Channel to the channel your keyboard or chord controller sends on
  2. Click + Add Transformer, choose Strummer, and set its MIDI In channel to match your drum pad controller
  3. Assign pad actions (chord positions, bass, passthrough, etc.) to each pad
  4. In your DAW, create a MIDI track receiving from the DrumStrum virtual port
  5. Play a chord on your keyboard, hit your pads — DrumStrum routes transformed notes to your DAW in real time

MIDI Setup

DrumStrum automatically creates a virtual MIDI port named DrumStrum when it launches. There are two ways to wire it into your setup:

Via your DAW: Route MIDI to and from DrumStrum through your DAW's MIDI routing. Set a MIDI track's input to DrumStrum to receive transformed output, and configure your DAW to forward controller input to DrumStrum. This is the most flexible approach and works well with Ableton Live, Logic, and most other DAWs.

Direct connection: Connect your controllers (pads, keyboards, etc.) and hardware synths directly to DrumStrum without routing through a DAW. DrumStrum opens all available MIDI inputs automatically and can send output directly to a hardware synth selected as the output device on each transformer. Direct connections often result in lower latency and are covered in more detail later in this manual.

On Mac, no extra drivers or virtual MIDI software are required. If DrumStrum disappears from your DAW's port list after a sleep or controller reset, use Refresh MIDI in the Routing tab to reconnect.

Tip: If your controller stops responding after switching patches or reconnecting USB, click Refresh MIDI in the Routing tab. This reconnects all MIDI ports without restarting the app.

Controller Notes

DrumStrum works with any MIDI controller. A note map tells DrumStrum what each pad on your controller does — which note number corresponds to which physical pad, and what label to show in the UI. Once a map exists, you can reuse it across any number of transformers and presets. Setting one up is a one-time activity per controller.

Built-in Maps

DrumStrum ships with maps for several common controllers and layouts so you may not need to build anything from scratch:

More built-in maps will be added over time. Built-in maps can also be duplicated as a starting point for a custom map.

Mapping Your Own Controller

If you have an Alesis, Yamaha, Nord, Roland SPD, or any other kit not covered by a built-in map, you can create your own in a few minutes. It's a one-time setup, and the result is reusable forever.

  1. Go to the Maps tab and click + New Map. Give it a descriptive name (e.g. "Alesis Nitro" or "My Roland SPD").
  2. Add a row for each pad. Click MIDI Learn next to a row, then hit the pad on your controller — DrumStrum fills in the note number automatically. Then type a label: "Kick", "Snare", "Cymbal Bell", "My Left Midi Shoe" — whatever makes sense to you.
  3. Repeat for every pad you want to use. You don't have to map every pad at once — you can add rows later.
  4. Use the map in a Transformer. When you add a Strummer or Note Remap transformer, select your new map as the input map. Each labeled pad row then gets an action dropdown where you decide what that pad does: play a chord note, trigger a bass line, fire a looper action, or pass through unchanged.

The label you give a pad is purely for your own reference — it's how that pad appears in the transformer card. If your controller layout is unconventional (rotated, upside down, played sideways), just label things however they make sense from your playing position.

Output Maps — Targeting Devices with Unique Action Sets

Note maps aren't only for describing your input controllers. They're equally useful for describing a destination device that responds to MIDI notes in a non-standard way. If a module or synth has its own set of note-triggered actions, you can create an output map with human-readable labels for each of those actions — making it far easier to wire up from a transformer card.

A good example is the Eventide Misha, a Eurorack module that accepts MIDI notes to drive its internal sequencer and navigation. Each MIDI note triggers a specific Misha function: step up by one interval, step up by two, step down by one, and so on. By creating an output map with rows labeled +1, +2, +3, −1, −2, −3 and so on, the abstract note numbers disappear entirely — in any transformer you just assign a pad to "+2" and DrumStrum sends the right note. The map captures the device's vocabulary once, and every transformer that targets it speaks that language automatically.

This pattern applies to any device with a fixed note-to-action layout: hardware sequencers, Eurorack modules, and synths with note-mapped performance controls. Build the map once, and it becomes a reusable abstraction for that device across all your presets.

Sharing and Exporting Maps

Maps can be exported to a file and imported on another machine, making it easy to share a controller map with other DrumStrum users or back up your setup. Use the Export and Import buttons in the Routing tab. Shared maps are a great way to get a head start on a new controller — if someone in the community has already mapped your kit, you can import their map and skip the MIDI Learn step entirely.

BopPad

The Keith McMillen BopPad is a round pad with four physical zones. DrumStrum includes a dedicated zone decoder that expands those four zones into up to 12 logical zones, giving you significantly more expressive real estate from a single pad — useful for finger drumming, stick playing, or assigning a range of chord actions across the surface.

To use 12-zone decoding, your BopPad needs a specific MIDI configuration — a quick one-time setup in the BopPad editor. Email Bill for the settings; documentation for this step is in progress.

Transformers Tab

The Transformers tab is the heart of DrumStrum. A Transformer defines how one MIDI input channel is processed and where it goes. You can have multiple Transformers — one per controller, one per zone, or as many as your setup needs.

Creating a Transformer

Click + Add Transformer. Each Transformer card lets you:

Transformers can be reordered by dragging the handle on the left of each card. They are processed in order — earlier transformers run first.

Chord Entry Card

At the top of the Transformers tab is the pinned Chord Entry card. This controls how DrumStrum receives and handles the current chord:

Routing Tab

The Routing tab shows your MIDI connections at a glance and contains global timing and utility settings.

The I/O overview at the top lists active input and output device assignments across all your transformers, so you can quickly verify your routing without opening each card.

Below that are global settings cards:

The Danger Zone contains three actions:

Dashboard Tab

The Dashboard provides a live overview of your MIDI routing. It shows which devices are connected as inputs and outputs, and how each transformer is wired between them. Use it to confirm your signal path before playing.

Trace Tab

The Trace tab is a live MIDI monitor. It shows every incoming MIDI message in real time — note ons, note offs, CC messages, aftertouch, and pressure — with timestamps and the source device name.

The Trace tab is especially useful for diagnosing channel mismatches, unexpected CC collisions, and verifying that your controllers are sending on the right channels.

Maps Tab

The Maps tab is where you create and manage note maps — named tables that translate incoming MIDI note numbers to labels and actions. Note maps are used by Strummer and Note Remap transformers to define what each pad does.

Transformer Types

Strummer

The core DrumStrum mode. Each pad is assigned a chord action — a role it plays within the current chord. When a pad is hit, DrumStrum looks up the current chord and fires the appropriate note. Pad 1 might play the root, Pad 2 the third, Pad 3 the fifth, and so on. The rhythm comes from you; the harmony comes from the chord.

See Pad Actions for the full list of available actions.

Note Remap

Remaps incoming MIDI notes to different output notes, independently of the current chord. Useful for translating between note layouts — for example, converting a GM drum map to an Ableton Core Drumrack layout, remapping one controller's note numbers to match another, or adapting your pads to a VST or hardware synth that responds to specific notes in a fixed layout.

Assign an input map to identify what your pads send, and an output map to define what note each pad should become.

CC Router

Routes incoming CC messages to one or more output channels, optionally remapping the CC number. Useful for routing sustain pedals, expression pedals, or any CC source to specific synths or DAW parameters.

Each rule in a CC Router transformer specifies:

CC Router transformers respect the input device assigned to the transformer card. Channel filtering is per-rule — set In Channel to 0 on a rule to match that CC on any channel from the assigned device.

CC Strum

Triggers a strum (a sequence of chord notes played in rapid succession) when a CC value crosses a threshold. Useful for ribbon controllers, expression pedals, or any continuous controller you want to use as a strum trigger rather than a note source.

Chord to Range

Normalizes chord notes into a specific octave range and passes them through. Unlike the Strummer, this type doesn't map pad hits to chord positions — it takes the raw chord and constrains it to a range you define, useful for feeding chord voicings to a specific part of a synth's keyboard range.

Presets Tab License required

Presets are named snapshots of your entire DrumStrum configuration — all transformers, chord entry settings, routing, and maps in one save.

Presets are stored locally and persist across sessions.

Looper Tab License required

The Looper records and plays back DrumStrum MIDI output in real time. It supports overdubbing and a unique Frippertronics mode for evolving ambient textures.

Loop Modes

Frippertronics Decay

Inspired by Robert Fripp's tape loop technique. When Frippertronics is active, each pass through the loop reduces the velocity of recorded notes by a percentage you set (1–99). Lower values fade material faster, letting new overdubs emerge above the decaying texture. Set to 0 for a standard non-decaying loop.

Looper Controls

Looper actions are assigned as pad actions in your Transformer settings — see Looper Actions in the Pad Actions reference. You can assign them as the primary action on a dedicated pad, or use the double-tap trigger: define a note and a looper action in the Looper tab's trigger list, and two quick hits on that note will fire the looper action without interfering with its normal single-hit behavior.

Pad Actions Reference

In Strummer mode, each pad is assigned one of the following actions.

Chord Actions

ActionDescription
Chord Note 1 – 7Plays the Nth note of the current chord, sorted low to high. Chord 1 is the lowest note, Chord 2 the next, and so on. If the chord has fewer notes than the position selected, DrumStrum wraps to the nearest available note.
Play AllFires all chord notes simultaneously at the pad's velocity — a full chord stab on one hit.
Upstroke AllFires all chord notes low→high in rapid succession, with the strum delay between each note (set in Routing › Strum Timing). Mimics a guitar upstroke.
Downstroke AllFires all chord notes high→low in rapid succession. Mimics a guitar downstroke.
Iterator UpAdvances a shared position counter upward through the chord on each hit, wrapping from the top back to the bottom. Multiple pads assigned Iterator Up/Down share the same counter, so they step through the chord together.
Iterator DownAdvances the shared counter downward through the chord, wrapping at the bottom.
RandomPlays a pseudo-random chord note, with no immediate repeat — guaranteed to pick a different note than the last hit.
Velocity StrumMaps hit velocity to chord position: a hard hit plays the lowest chord note, a soft hit plays a higher note. The opposite of Bass: Velocity → Position — here velocity drives position within the chord range, not bass range.
Pass ThroughForwards the raw pad note to the output unchanged — bypasses chord processing entirely. Useful for pads you want to use as standard drum hits alongside chord-triggered pads.
Transpose ToggleSwitches the chord channel into transpose mode — notes on that channel shift the chord output by interval instead of replacing the chord.
PanicSends All Notes Off immediately from a pad hit.

Bass Actions

ActionDescription
Bass: RootPlays the detected root note of the chord, shifted down one or two octaves into bass range.
Bass: Root/FifthAlternates between root and fifth on each hit. The sounding note sustains until all chord keys are released (chord-gated), giving a natural legato bass feel.
Bass: Velocity → PositionMaps hit velocity to chord position: a hard hit plays the root (position 1), a soft hit plays a higher chord tone. Scales to the actual chord size.
Bass: PedalSustains a bass note until all chord keys are released (chord-gated). A new hit cancels the previous note and plays the new one immediately.
Bass: Walk Diatonic PremiumSteps up through the chord tones diatonically with each hit, wrapping at the top.
Bass: Walk Chromatic PremiumSteps chromatically toward the next chord root by two semitones per hit, with wrap-around.
Bass: Walk Thirds – Diatonic PremiumWalks through chord tones skipping by diatonic thirds on each hit.
Bass: Walk Thirds – Chromatic PremiumWalks through chord tones skipping by chromatic thirds on each hit.
Bass: Walk Phrase – Diatonic PremiumDiatonic walk that resets to the root after a configurable silence gap (Phrase Timeout in Routing › Bass Timing). The phrase continues across chord changes within the window.
Bass: Walk Phrase – Chromatic PremiumSame as Walk Phrase Diatonic but using chromatic steps. Useful for chromatic approach lines that reset naturally after breaks.

Looper Actions Premium

ActionDescription
Record ToggleStarts recording if stopped; stops recording if active.
StopStops playback and recording, leaving the loop intact.
ClearErases the current loop.
UndoRemoves the last overdub layer.
Transpose ToggleSwitches the looper into transpose mode — chord notes received while active transpose the loop playback rather than replacing the chord.
Frippertronics ToggleEnables or disables Frippertronics velocity decay on the loop.

Licensing

DrumStrum is free to download and use. Premium features (Presets and Looper) require a license.

To purchase: click Activate License… from any locked feature or from the menu bar icon menu. You'll be taken to a secure checkout. After purchase, you'll receive a license key by email.

To activate: open the Activate dialog, enter your license key, and click Activate. An internet connection is required for activation. A single license supports up to 5 machines.

Automatic Updates

DrumStrum checks for updates automatically once per day. When an update is available, you'll see a notification and can install it with one click.

To check manually: click the menu bar icon and choose Check for Updates…

Questions not answered here? Email us.