FootSmart

Benefits







Colors

On the MC6Pro, you specify colors for banks or presets.

If you want to try a different schema, you must change every bank or preset manually.


With FootSmart, you define palettes (groups of colors) and the palette is specified for banks or presets. Changing a schema is done by just changing the palette.

            
            palettes:
            # An experimental color set for banks/presets for experimenting/noodling
            - name: Experimental
              bank_text: lime
              bank_background: black
              preset_text: black
              preset_background: lime
When you change the color schema for Experimental, it applies everywhere it is used. You don't have to manually change each instance. More info.


Named Banks

On the MC6Pro, you can jump to a different bank via a preset.

But you specify the bank to jump to as a bank number. This is error-prone.


With FootSmart banks are named, and you jump to a bank name.


            banks:
            - name: Home
              description: Navigation to other banks
              palette: Navigation
              presets:
                - short_name: Noodling
                  actions: [{name: Bank Noodling}]
                  palette: Experimental
The action Bank Noodling jumps to the bank named Noodling (and this preset appears in the bank named Home). This also shows palettes: the bank text will be in the colors for the Navigation palette, and the preset colors are from the Experimental palette


Named MIDI Messages

On the MC6Pro, you put MIDI PC and CC messages directly in the preset.

This is error-prone and non-intuitive, referring to numbers.


With FootSmart, MIDI messages are defined for each device, and referred to by name. This reduces errors and results in a more readable configuration.

A device could be defined as:


            devices:
              # The Strymon Iridium amp-in-a-pedal
              - name: Iridium
                channel: 1
                messages:
                # Choose the amp type
                - {name: Deluxe Reverb, type: CC, number: 19, value: 1}
                - {name: AC30, type: CC, number: 19, value: 2}
                - {name: Plexi, type: CC, number: 19, value: 3}

This defines the messages Iridium Deluxe Reverb, Iridium AC30, and Iridium Plexi. They can be used in a preset like:


            presets:
              - short_name: Deluxe Reverb
                actions:
                    - name: Iridium Deluxe Reverb
There is much more to named messages,


Easier Scrolling Presets

The MC6Pro can have scroll presets - presets that cycle through several actions, one action per click. These are really useful but very complex to set up:


FootSmart hides this complexity by giving you two use cases, each with reversing direction enabled (by a long press):

An example of the first option: for the Strymon Iridium, I have 4 actions defined for 4 different sounds. Each action is made up of multiple MIDI messages, including the amp being emulated, the level, the drive etc.

              presets:
                - type: scroll
                  actions:
                    - {name: Clean, action: Iridium Clean}
                    - {name: Burry Rhythm, action: Iridium Burry Rhythm}
                    - {name: Distorted Rhythm, action: Iridium Distorted Rhythm}
                    - {name: Distorted Plexi, action: Iridium Distorted Plexi}
Behind the scenes, FootSmart ensures that when you enter the bank, the Iridium Clean action is fired, setting the Iridium in the proper state. Then each click of the preset moves to the next state, firing the next action and changing the name.

An example of the second is the Iridium Drive parameter, this is a CC command with a value from 0 to 127.


                - type: cycle
                  action: Iridium Drive
                  values: [0, 16, 32, 48, 64, 80, 96, 112, 127]
                  names: [min, 1/8, 1/4, 3/8, 1/2, 5/8, 3/4, 7/8, max]
                  prefix: Drive
This cycles through the drive levels, with appropriate labeling (names are prefixed with Drive when displayed, e.g. Drive min or Drive 1/2).


If you prefer, such as when working with a looper pedal, cycle can display the next state instead of the current. A looper preset could have 3 actions: Start to start the looper recording, Playback to stop recording and begin playing back the loop, and Stop to stop playing the loop. The looper should not receive any MIDI messages until the preset is pressed, to start recording. The label shows the next state to be activated, not the current state.


                presets:
                  - type: cycle
                    show: next
                    action: Looper Start
                    values: [1, 2, 3]
                    names: [Start, Playback, Stop]
This generate no bank messages, and the label on the preset shows the next state. So when Start is displayed, clicking starts the looper recording, and changes the label to Playback.


Configuration as Code

The MC6Pro configuration (with FootSmart) is a file, and it is compiled to the format appropriate for the MCPro and uploaded. This has several advantages:


Why are half my pedals on the desk instead of the floor?

I have my MC6Pro and my Singular Sound Aeros looper on the floor. I use my feet with both these pedals. The MC6Pro controls everything (even the looper, for the most part). The Aeros has some functionality that cannot be controlled via MIDI, and so I use it with my feet occasionally.

My Strymon Iridium, Strymon TimeLine, and Eventide H9 are on a pedalboard on my desk. I never control them with my feet, and fiddling with the controls is much easier with them on the desk. All control of these pedals happens through MIDI, and they are triggered by the MC6Pro.