midi-faders-js

Description

midi-faders-js

  • allows you to use your midi faders/knobs in virtual banks so you’re no longer limited to the 8 or 16 controllers on your hardware;
  • maps your controllers to user-defined sends and allows you to specify meaningful labels for each controller in each bank;
  • allows you to map the 0-127 MIDI numbers to any arbitrary floating-point range using, if desired, an exponential curve for more natural mapping of controller to parameter values;
  • remembers the values of your faders/knobs so that shifting banks does not result in a sudden jump to remote values (you have to move the fader to its previous value before it will start sending out values again).
  • allows universal faders which act the same across all banks, and linked faders that assign the same functionality of a fader in one bank to that of any fader in a different bank.

Most of the control logic is programmed in JavaScript.  See the comments at the top of midi-faders.js for a further description of what this software does and how.

Instructions

To integrate this into your own max patch you’ll probably want to put the midi-faders-js-interface patch in a bpatcher, centring the visible part on the yellow box that displays fader labels and values.  A required argument to the patch is the mapping file (see midi-faders.js comments again); you will probably want to edit the umenu names to reflect your mapping setup.

You’ll then need to replace the ld2-midi-controller object in midi-faders-js-interface with your own controller map.  The trick here is to make sure that no matter what channel/controller number your faders are actually sending, that they map to channel messages 1-16 going into the [js midi-faders.js] object.  This channel number must be sent before the 0-127 value associated with it.

Changing banks is then a matter of selecting an item from the umenu (or typing + or – to step through them).

There’s also a fake-faders patch included in this package.  This is simply an on-screen mouse-draggable set of faders that you can use to test (or perform with) when your MIDI controllers aren’t at hand.

This entry was posted in Mapping, Midi. Bookmark the permalink.

Leave a Reply