Read The Bleepinโ€™ Manual

๐Ÿ”ฅ Make Stuff Happen (The Boring Way)

A MIDI trigger connects an incoming MIDI message โ€” from a foot controller, expression pedal, or control surface โ€” to an action in OnSong, so your hardware can literally do the work while you stand there lookin' cool. This screen sets up a single trigger. Your changes auto-save (cuz we're not animals), so just tap Done when you're done messin' around.

Which options show up depends on what kinda controller you're pluggin' in, but every trigger starts with these two absolute bangers:

MIDI Event

A MIDI Event is the incoming message that kicks off the trigger โ€” a note, a control change (CC), whatever. Tap to pick the message & its channel; the row shows what you picked, like "CC 4 on Channel 1." (We know, riveting.)

Action

The Action is what OnSong does when the trigger fires. Tap to pick from the action chooser; the row shows what you assigned, or "Unassigned" if you're feelin' lazy. For a variable control change like an expression pedal or knob that sends a smooth 0โ€“127 sweep, you'll also see:

Response Curve

The Response Curve shapes how the controller's travel maps to the action. Fancy, right?

  • Linear โ€” the controller & the parameter move together, 1:1. Boring but it works.
  • Logarithmic โ€” most of the travel works at the quiet end; great for a natural volume feel cuz our ears are weird.
  • Exponential โ€” most of the travel is subtle, & the top of the range pushes hard. Sneaky.
  • S-Curve โ€” stable at the extremes & fast through the middle; good for crossfades if you're into that.

Minimum & Maximum Value

These clamp the input event's useful range within 0โ€“127. Anything outside the range gets ignored, so you can dial in exactly the sweep you want. The minimum always stays below the maximum (thanks, math).

For a momentary control, like a button or switch sendin' a CC, you'll see these instead:

Behavior

Behavior decides how presses map to the action. Tap the row to cycle through:

  • Momentary โ€” active once a value greater than 0 is received. Pretty straightforward.
  • Latch โ€” fires the action on both edges, but with no on/off value. Press fires it once, release fires it again, each just a plain action. Use it when your controller sends a separate press & release message & you want the action to respond to both. (We know, super niche.)
  • Toggle โ€” treats the action as an on/off state. Crossin' the threshold on the way up sends the "On" action while droppin' back below sends the "Off" action. Use this for anything with a held state like a mute, a hold, a light.

Threshold

This is the value at or above which the controller counts as on. Values below it get ignored. It defaults to 1 for Momentary & 64 for Toggle. (We picked those numbers on purpose, we swear.)

Inverted

This setting reverses the input value direction. 0 becomes 127 & vice versa. Handy when a pedal is mounted or wired backwards cuz, y\u{2019}know, life happens.

Active

This turns the trigger on or off. Switch it off to suspend the trigger without deletin' the binding, so you can bring it back later when you get your act together.

OnSong 2026 — Last Refreshed September 2, 2026