Skip to main content

Performance App

The Performance App serves as a user canvas for standard MIDI signals.

It can be used for visual performances with Amethyst Player, Ableton Live, or Unipad; as a drum pad in any MIDI-enabled DAW; or as a canvas for your own DAW integration via the standard MIDI protocol.

It sends standard MIDI signals with aftertouch, ensuring compatibility with any DAW that accepts MIDI when used as a drum pad.

When you first enter the application, you will see a blank canvas. You can click or hold the function key to enter the action menu.

To exit the Performance App, enter the action menu and hold down the function key. You will be brought back to the application launcher. This is the standard method for exiting an app in Matrix OS.

Performance Canvas​

Action Menu​

Action Menu

Action Menu

The action menu allows you to change settings, modify palettes, and send MIDI controls within the Performance App.

Detect Action Menu State on Host Applications​

The Performance App will send out a CC signal when the action menu is entered (channel 1, CC 121, value 127 for enter, value 0 for exit).

Note Layout​

note

Please note that the Mystrix device family has two touchbars on the left and right. However, the device can be rotated to have the touchbars on the top and bottom.

In this orientation, the right touchbar will be mapped to the top touchbar, and the left touchbar will be mapped to the bottom touchbar. Note that the LED MIDI input note is separated for the two touchbars' MIDI output note.

Performance App Keymap

Touch Combo Keys​

Touch Combo Keys provide an alternative way to use the Mystrix's touchbar.

By default, the 16 touchbars are mapped to 16 MIDI notes. When Touch Combo Keys are enabled, holding any touch key will map the left and right columns of the keypad to the left and right touchbar's original note.

This means that holding down the touch key will act as a note shift for the two columns, making them function as a touchbar, similar to how the control key works on a computer keyboard.

Flicker Reduction​

Flicker Reduction is used when MIDI lightshows cause flickering or when the light speed exceeds the device's refresh rate. It is recommended to enable this feature only when Mystrix is used with Ableton Live.

Color Palette​

There are two built-in color palettes and four custom color palettes.

You can edit the custom color palettes in the action menu.

Built-in Palette 1​

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127

Built-in Palette 2 - Legacy Palette​

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127

Upload Custom Palette​

You can upload four custom palettes to the app for channels 3, 4, 5, and 6. You can edit the custom palettes in the action menu or upload custom palettes.

Community member Dovitate has created a custom palette uploader Max Patch for the Performance App. You can find it at 203 Systems Discord - Community Release.

You can find more custom palettes on Kaskobi's website.

SysEx API​

The SysEx API provides more advanced control over the canvas than regular MIDI signals, including real RGB LED color and faster LED fill.

The Mystrix SysEx header is:

0xF0 0x00 0x02 0x03 0x4D 0x58

RGB LED Color - 0x5E​

The RGB LED color command is used to set the color of the LED on the canvas.

The command is:

Header 0x5E POS R G B [POS2 R G B] [POS3 R G B] ... 0xF7

  • POS is the position of the LED on the canvas. It's Y * 10 + X. The (1, 1) is the lower corner of the grid and (8, 8) is the top right corner. You can access the underglow by using X Y 0 or 8. Additionally, you can do a global fill by using pos 0, row fill by 100 + Y, and column fill by 110 + X.
  • R, G, B are the red, green, and blue values of the LED. The value is 0-63.

You can repeat the POS R G B (for a reasonable amount of times) to set multiple LEDs at once.

RGB LED Color Batch Fill - 0x5F​

The RGB LED color batch fill command is used to set the color of the LED on the canvas in a faster way.

The command is:

Header 0x5F R G B POS [POS2] [POS3] [POS4] ... 0xF7

  • R, G, B are the red, green, and blue values of the LED. The value is 0-63.
  • POS is the position of the LED on the canvas. It's Y * 10 + X. The (1, 1) is the lower corner of the grid and (8, 8) is the top right corner. You can access the underglow by using X Y 0 or 8. Additionally, you can do a global fill by using pos 0, row fill by 100 + Y, and column fill by 110 + X.

You can repeat the POS (for a reasonable amount of times) to set multiple LEDs at once.

Upload Custom Palette - 0x41​

The Upload Custom Palette command is used to customize LED color palettes. The process includes three subcommands (0x7B, 0x3D, and 0x7D), allowing for initialization, data upload, and finalization. The command structure is as follows:

The command is:

Header 0x41 SubCommand Data ... 0xF7

  • SubCommand: Specifies the stage of the upload process:
    • 0x7B: Uploading Start
    • 0x3D: Uploading Write
    • 0x7D: Uploading End

Uploading Start (0x7B)​

Marks the beginning of the palette upload process.

Header 0x41 0x7B 0xF7

Uploading Write (0x3D)​

Writes color data to the specified palette.

Header 0x41 0x3D PaletteID Index R G B [PaletteID2 Index2 R G B] ... 0xF7

  • PaletteID: Specifies the target palette (0-3).
  • Index: The slot in the palette to update (0-127).
  • R, G, B: The red, green, and blue components of the color (0-63).

The RGB values are remapped from 6-bit to 8-bit resolution internally for enhanced color precision.

Uploading End (0x7D)​

Completes the palette upload process and saves the changes to non-volatile storage.

Header 0x41 0x7D 0xF7

Comments