Fader Command

Fader Command is a programmable MIDI controller. With easy to program faders, control your MIDI gear your way. Twist any fader with two dynamic LFOs (low frequency oscillators).


Guide

The Fader Command iPad app was designed to:

  • Control MIDI gear via CC
  • Label everything
  • Provide fluid workflow
  • Allow fast and easy creation of faders
  • Modulate MIDI with LFOs
  • Easily share programs

As MIDI instruments are getting smaller and more portable, there are fewer hands-on control buttons/knobs/faders. Many under the hood features are hidden in sub-menus or shift combinations. Improve your workflow and make these hard to access parameters readily available with Fader Command.

Many MIDI controllers on the market today have one big flaw: there is little to no labeling. Fader Command provides ample room for labels and can store notes.

Finally, just the LFOs (Low Frequency Oscillators) are worth the price of admission. Add 2 additional MIDI LFOs to any MIDI gear. With 12 shapes from classic to constantly changing algorithms, the Fader Command LFOs offers some new twists.


Contents


Introduction

Welcome to Fader Command, a programmable MIDI controller with 2 LFOs (Low Freqency Oscillators).

With easy to use commands, program faders designed to control MIDI gear. There are many programs and tutorials available to get you started quickly.

Fader Command has three main sections accessible via tabs at the bottom of each screen.

  • Faders: The programmable faders and LFOs are located on this tab.
  • Commands: On this tab, code faders using various commands. Tap the Faders tab to try your program.
  • MIDI Out: Tap this tab to establish a connection to your MIDI gear.

Faders Tab

The Faders tab includes 10 pages with up to 10 programmable faders per page plus 2 LFOs.

The right hand side of the screen are for navigation and options. This includes buttons for options, fader information, 10 fader pages, LFO and a swap page.

The first button opens various options based on the page selected. Options include:

  • Send all fader data to MIDI out (pages 1-10)
  • Reset all fader data to default values (pages 1-10)
  • Send fader data on current page only (pages 1-10)
  • Reset fader data to default values on current page only
  • Undo all faders on page
  • Save LFO data (LFO page)
  • Load LFO data (LFO page)

The second Info button reveals information about the faders such as fader number, notes, MIDI channel, CC number, fader positions, MIDI output value and links. Use Info to help spot any problems with faders. Errors are highlighted in red.

The following buttons selects pages from 1 to 10 and the LFOs.

The last button swaps between the last 2 selected pages.

To the right of the buttons is vertical text. This is either the program name (gray) or messages (red).


Command Fader

The Command Fader is the heart of Fader Command. This programmable fader features:

  • Large readable labels
  • Precice MIDI CC control
  • Notes
  • Undo/Redo per fader
  • Nudge values up/down
  • Default value indicator
  • Program change control
  • Info mode
  • Color/Synth categories
  • Automated division lines

Press and hold a fader for a second to reset it to the default value.

Since the nudge and undo icons are small, tapping to the left of the buttons will also work.

Note that all fader positions are saved when you close the app.


Low Frequency Oscillators

Each program includes 2 low frequency oscillators (LFOs). These LFOs modulate any fader.

The LFO options are:

  • Destination
  • Range
  • Shape
  • Rate

A destination includes any of the faders (up to 100) in your program.

Select the lowest and highest range to modulate. If the high range is lower than the low range, only the top and bottom areas will be modulated. With the square and pulse shapes, the modulation will alternate between the low and high range.

Choose one of the following 12 LFO shapes:

  • Sine
  • Rectified Sine
  • Triangle
  • Square
  • Drifting Square
  • Pulse: 10%
  • Pulse: 90%
  • Saw
  • Ramp
  • Random
  • Dirty Funk
  • 3 Steps

The Drifting Square, Random and Dirty Funk shapes are generated by algorithms. They are constantly changing every cycle.

Select the speed of the modulation with the Rate fader. Tap the stop/play icons to start or stop the LFO. Rates range from 0.01 to 10 Hertz.

Undefined destinations will not modulate. Selecting new destinations will stop the LFO. Scanning through 100 destinations while the LFO is running would mess up the data on your gear!

An additional 27 LFO destinations can be programmed with the lfo command.

Note that all LFO fader positions are saved when you close the app.


Commands Tab

Commands are entered via the Commands tab. Use Insert/Goto to add code templates, scroll and to undo/redo edits.

Faders can be created in just a few lines of code. Program directly on the iPad. Easily share/backup your code as plain text.

To get the most out of programming and to save time, follow these rules/guidelines:

  • The first line of code is the program name.
  • Write one comand per line.
  • Use blank lines to separate blocks of code.
  • Code all commands in lowercase.
  • Write labels and fader names using Camel Case.
  • Use the type command to define reusable faders.
  • Get to know the Insert/Goto feature on the Commands tab.
  • Cut/Copy/Paste code to move/duplicate faders.
  • Backup your programs on another computer. Share them as plain text files.
  • Use the Info button on the Faders tab to test faders and spot errors.

Commands

The following is an alphabetical list of commands designed to code MIDI faders.

cc

Syntax: cc [0-127]

Set the Continuous Controller/Control Change number of a fader. This number must match with the MIDI parameter to control. The default CC number is 1.

Every fader on the same channel should have a unique CC number.

Consult the manual of your MIDI instrument for a list of CC numbers.

CC Example Code
cc 3
set 0 0 Off
set 64 1 On
fader Hard Sync

channel

Syntax: channel [1-16]

Set the MIDI channel number of a fader. The MIDI channel must match the channel of the instrument. The default channel is 1.

If all faders are on the same channel, set the channel once before all faders.

Channel Example Code
channel 1

cc 7
scale 0 100 0
fader Volume

# Fader VCO Level will also be on channel 1
cc 7
fader VCO Level

copy

Syntax: copy [type name]

Copy fader type parameters to a fader. See the type command for example code.

default

Syntax: default [0-127]

Set the default starting fader position.

A value of 0 sets the fader cap position at the bottom and a value of 127 sets the fader cap at the top.

Tap and hold a fader for a second to return to the default value.

Default Example Code
# Set Volume default at maximum level
cc 7
default 127
scale 0 100 0
fader Volume

div

Syntax: div [1-127]

Set the number of division marker lines on a fader. A division of 1 is no lines. The default division is 4.

Note that Fader Command automatically sets division lines. Use div to override the number of lines. Type this command after all fader parameters and before fader/patch/type.

Div Example Code
# Force the number of division lines to 16
cc 7
default 127
scale 0 100 0
div 16
fader Volume

fader

Syntax: fader [fader name]

Create a fader. Define all fader parameters before the fader command (see table below). Faders appear in the order they are created.

Faders can also control the value labels of another fader. See the if and link commands.

Fader Parameters:
channel
copy fader type
cc
default
set or scale
note
div
Color Commands

Once a fader is created, the next fader will inherit all the previous parameters. If two or more consecutive faders need the same parameters, just define unique CC numbers for each fader.

Fader Example Code
# Define fader parameters first
green
cc 7
default 0
scale 0 100 0
div 16
fader VCO 1 Level

# Next fader inherits previous parameters
cc 8
fader VCO 2 Level

if

Syntax: if [fader position: 0-127] [type name]

Control the label values of another fader. All fader types must be defined before using this command.

The if command works with the fader command. To specify the fader to be controlled, see link.

Generally, the fader positions will be the same as the set commands. Two or more if commands and types are needed to change value labels. The first fader position must start at 0. Other positions must be ordered from lowest to highest.

If Example Code
# Define fader types first
default 0
set 0 0 Off
set 64 64 On
type on off

default 0
set 0 0 No
set 64 64 Yes
type yes no

channel 2

# Create a link to Worker 101:2 (CC:Channel)
cc 100
default 0
set 0 0 On/Off
set 64 64 Yes/No
link 101 2
if 0 on off
if 64 yes no
fader Boss

cc 101
copy on off
fader Worker

lfo

Syntax: lfo [cc number: 0-127] [name]

All 100 program faders are automaticaly mapped as LFO destinations. To add additional destinations (up to 27), use the lfo command. Destinations will be numbered from 101 to 127.

LFO Parameters:
channel
Color Commands

The purpose of this command is to modulate MIDI parameters that do not require control by a fader in Fader Command. Example: Parameters with physical knobs/buttons/faders on a synth.

LFO Example Code
filter
lfo 19 Cutoff
lfo 21 Resonance
mix
lfo 7 Volume

link

Syntax: link [cc number: 0-127] [channel: 1-16]

Control the label values of another fader via it's CC number and MIDI channel. Link works with the fader command.

If possible, place the linked faders next to each other on the same page.

Press the Info button on the Faders tab to view link information. The link is displayed as CC:Channel, such as 90:1 (CC number 90 : MIDI Channel 1).

Control logic is defined with if.

See the if command for example code.

mute

Syntax: mute

Ignore all commands between mute and unmute.

Mute Example Code
# Ignore fader Level B

cc 3
scale 0 100 0
fader Level A

mute
cc 4
fader Level B
unmute

cc 5
fader Level C

note

Syntax: note [note]

Create a note for a fader. Notes are displayed when the Info button is activated on the Faders tab. Notes are indicated with a triangle icon in fader title bar.

Unlike other parameters, a note is not inherited by the next fader created.

Note Example Code
cc 8
suffix %
scale 0 120 0
note Level distorts above 100%
fader VCO 1 Level

patch

Syntax: patch [fader name]

The patch command is identical to the fader command except that it creates a fader to browse patches/programs. Patch does not require a CC number.

Patch changes are not sent to MIDI instruments when Send/Reset options are selected. Changes must be done manually via the fader.

Patch Example Code
default 0
set 0 0 Pad
set 32 1 Bass
set 64 12 Flute
set 96 32 Lead Synth
patch Patches

prefix

Syntax: prefix [prefix]

Add recurring text before a value label. Use the _ character to add a space between the prefix and value label. Prefix is used in conjunction with the set and scale commands.

To add text after a value label, see suffix.

Prefix Example Code
# Generate labels from +1.0 dB to +3.0 dB
default 64
prefix +
suffix _dB
scale 0 3 1
type gain

scale

Syntax: scale [starting number] [ending number] [decimal: 0|1]

Define a numerical range of value labels. To add numbers with a decimal point, type 1 for the decimal argument. The default scale parameters are 0 100 0.

This command scales the full range CC numbers of 0 to 127 to the starting number and ending number supplied.

To define value labels, use can also use set.

Scale Example Code
# Generate value labels from 10.0 Hz to 100.0 Hz
default 0
suffix _Hz
scale 10 100 1
fader Frequency

set

Syntax: set [fader position: 0-127] [MIDI value: 0-127] [label]

Define the value labels of a fader based on the fader position.

Two or more set commands are needed to define value labels. The first set fader position must start at 0. Other positions must be ordered from lowest to highest.

Refer to the manual of your instrument for MIDI values to use. The MIDI value is the number sent to the instrument.

To define value labels, use can also use scale.

Set Example Code
default 0
set 0 0 Option 1
set 32 1 Option 2
set 64 3 Option 3
set 96 4 Option 4
fader Options

space

Syntax: space

Create a gap between faders. Space has the following optional arguments:

Syntax Description
space line Add a vertical line.
space [2-9] Add 2 to 9 spaces.
space page1 Show page 1 fader values. Tap to go to page 1.
space page2 Show page 2 fader values. Tap to go to page 2.
space page[3-10] Show pages 3-10 fader values. Tappable.
space lfo Show LFO fader values. Tap to go to the LFO page.

As with faders, spaces are generated in the order they are created.

On a blank page, use the space page options to create an overview of all faders. Tap Insert Pages to create this.

suffix

Syntax: suffix [suffix]

Add recurring text after a value label. Use the _ character to add a space between the suffix and value label. Suffix is used in conjunction with the set and scale commands.

To add text before a value label, see prefix.

Suffix Example Code
# Generate value labels from 10.0 Hz to 100.0 Hz
default 127
suffix _Hz
scale 10 100 1
fader Frequency

type

Syntax: type [type name]

Define reusable fader parameters. Fader types should be declared at the beginning of the program. Note that types do not display faders. Give each type a unique name.

Use the copy command to transfer the type parameters to a fader.

Type Parameters:
default
set or scale
div

Fader types can also be used to change the value labels of another fader with the if command.

Declare the fader type parameters before the type command.

Type Example Code
# Define types before copying them
default 0
set 0 0 Off
set 64 1 On
type on-off

default 43
set 0 0 No
set 43 1 Yes
set 86 2 Maybe
type yes-no

cc 39
copy on-off
fader Turn Me

cc 40
copy yes-no
fader Scream

unmute

Syntax: unmute

Ignore all commands between mute and unmute.

See mute for example code.

#

Syntax: # [comment]

Start a line with # to add a comment to your program. Comments are not the same as fader notes. Use comments for program information such as MIDI instrument firmware number, author and date.

@

Syntax: @[1-3]

Use @1, @2 and/or @3 as scroll markers in large programs. A wise spot to add @1 is at the first fader created.

Use the Insert/Goto feature to scroll to these markers.


Color Commands

Add color to your faders. Gray is the default color.

Colors
gray
red
orange
yellow
lime
green
cyan
blue
purple
pink

Faders can also be grouped by synthesizer categories.

Synthesizer Categories
pitch
mod
osc
mix
filter
env
amp
trigger
fx
system


Insert/Goto

On the Commands tab, use Insert/Goto to insert code templates, scroll, undo/redo edits and get help.

Tap on the top to advance through the 5 pages indicated by circles. You can also swipe right/left.

On pages 1 and 2, tap the commands to insert code.

On page 3 and 4 there are lists of colors and synth categories.

Page 5 is Goto where you can scroll to the top/bottom and @[1-3] markers.


Programs and Tutorials

On the Commands tab, select/edit up to 12 programs. Tap one of the 12 program buttons.

Tap on the word Program to toggle between selecting programs and a cheat sheet with commands and syntax.

Note that programs are automatically saved.

Copy/Paste the following programs and tutorials in Fader Command.

Programs: Tutorials:
Alexander Defender Stargate Drive Fader Command
Korg microKorg Synth Program Name and Comments
Korg microKorg Vocoder Channel
Modal CraftSynth 2.0 CC
Moog Minitaur/Sirin Default
Moog Sub Phatty Set Range and Scale
Strymon BigSky Mute and Unmute
Strymon Mobius Space and Divisions
Fader, Patch and Notes
Colors and Synth Categories
Type and Copy
Suffix, Prefix, LFO, @

MIDI Out Tab

Use the MIDI Out tab to establish a connection with your MIDI gear. The title on the Faders tab will turn red with a reminder to select a MIDI output port if you have not done so.

Once your iPad is connected to a MIDI instrument, tap its MIDI output port name in the table to establish a connection.

Use the Network Session when connecting to an Apple computer or laptop.

If your MIDI instrument is not listed, tap the Reload button to refresh the list of output ports available. It may take a few seconds for your MIDI device to be recognized.

The selected MIDI output port is highlighed in gray.

Use the 16 keys to check the MIDI channel of your instrument. Each key plays an A3 on a different MIDI channel.

For further details, refer to the article on MIDI Connections.


Errors

Error messages are displayed in red on the far right hand side of the screen or with an alert window.

Follow the directions given by the error messages. Often, restarting your MIDI gear and/or Fader Command is all you'll have to do.

When debugging programs, check for typos and make sure the numbers (MIDI channel, CC number, MIDI data) are correct.

Use the Info button on the Faders tab to see fader details.

Fader Command needs some disk space to store programs. If you get file errors, try deleting programs/files you no longer need.

Fader Command: Download on the App Store


Download Tutorials & Programs


Fader Command screenshots


Command Fader


Fader Command: Coming

Fader Command Version 1.00, August 2019
Copyright © 2018-2019 Denis Desjardins

D Logo