Configuration
The configuration is stored in a config.json file. If it doesn't exist, the App will ask you some
questions and create a configuration file on boot. Please make sure that you have your Midi devices
connected when booting the App for the first time.
Configuration structure
The config.json file can simply be edited to fit your needs:
{
"playback_output_name_1": "SH-4d", // Name of playback device #1 *
"playback_output_name_2": "None", // Name of playback device #2 *
"pc_config": [ // Program Change configuration (4 times)
{
"group": 0, // The group index (don't change this)
"channel": 0, // The channel used for the PC message
"mode": 0 // Program Change mode (see "Program Selector")
}
],
"track_config": [ // Per-track configuration block
{
"track_index": 0, // The index of this track in the step sequencer
"midi_channel": 14, // The midi channel for this track *
"color": "Red", // The color of this track (step editor)
"default_note": { // The default note (when adding a new step)
"note": 36, // Default note byte (60=middle C)
"velocity": 100, // Default velocity (0-127)
"length": 12, // Default length in pulses (24 pulses = 1 step)
"nudge": 0 // Default nudge (-23 - +23)
},
"is_poly": true, // Determines if the track is polyphonic or not
"pattern_change_group": 0, // The pattern change group (0-3)
"c1_cc": 1, // Control Change number 1
"c2_cc": 2, // Control Change number 2
"c3_cc": 3, // Control Change number 3
"c4_cc": 4 // Control Change number 4
},
// (31 times more, 1 for each track *)
]
}
*: See "Midi channels and multiple devices" for more details.
Midi channels and multiple devices
You can connect up to two midi devices for playback. This will be asked during the configuration process.
Please note that the midi_channel in config.json is 0-indexed. This means that midi_channel 0 will map to Midi Channel 1 on your device (assuming the first Midi Channel on the device is "1").
The midi channels for the second playback device will be set by adding 16 to it.
So to summarize:
midi_channel0-15 will be mapped to playback device #1, Midi Channel 1-16- Example #1 :
midi_channel0 is Midi Channel 1 on playback device #1 - Example #2 :
midi_channel6 is Midi Channel 7 on playback device #1 - Example #3 :
midi_channel15 is Midi Channel 16 on playback device #1
- Example #1 :
midi_channel16-31 will be mapped to playback device #2, Midi Channel 1-16 (after subtracting 16)- Example #1 :
midi_channel16 is Midi Channel 1 on playback device #2 - Example #2 :
midi_channel25 is Midi Channel 10 on playback device #2 - Example #3 :
midi_channel31 is Midi Channel 16 on playback device #2
- Example #1 :
Pattern change group
Each track can be assigned to a pattern change group. The pattern change group is used to send the Program Change message (PC) to the correct device. Currently this only happens when switching a scene for all tracks, but in the future you might be able to mix-and-match Scenes in order to do Scene transitions.