Additional MIDI CC In Controls / External controller as a full-featured control surface

Well, I think the only thing missing is the part about Live Recording mode.
The ability to assign a MIDI cc to an FX slot for real time changes to a track would be one of the most advantageous use cases.
Besides the new synth macros listed by inz1, I would add those from the live performance “Synthesizer Mode”.

2 Likes

Good to see you here, Sean!

Looking forward to your
Mini MIDI Keyboard
project!

1 Like

Can we expand the wish to include the OG Tracker?

I believe expanded input CC implementation would really take the Tracker to the next level, especially for live performance.

What about instead of mapping every possible parameter to a CC value, implementing the ability to midi learn / do custom mappings? Say for example, I want to control the cutoff freq for Instrument 1, then I select that parameter and indicate I want to map it, then move the knob I want to map it to. Similar to how midi mapping is done on the M8. This would make live performance with the tracker a dream. I think about this a lot :sweat_smile:

Let me know if this should be its own wish.

2 Likes

Yep, this wish covers the OG, Plus and the Mini :slight_smile:

Hello. I still think it’s a great idea if the Tracker OG could control the Tracker Mini. Apart from MIDI notes, start, stop and BPM, the Tracker simply doesn’t send anything out. Not even data in performance mode. It would be great if the two devices could communicate with each other, as they actually follow the same logic. For me at least, that would breathe new life into the Tracker OG and would be a real added value.

1 Like

Hello. In the introduction it says that it is possible to assign CC signals for the performance mode. Unfortunately I can’t do that. Do I understand it correctly that it is actually possible to trigger the performance mode via an external controller on the Tracker Mini?

That is correct, here’s the corresponding page from the manual (Page 294) for it:

1 Like

As the firmware isn’t open source, I’m not sure just how doable anything in this table is, but here’s a full and exhaustive list of all the CC’s I’d love to see supported:

CC# Function Comment N°
PC Program change should alter the currently selected instrument.
NOTE ON Note on value can also set the value of the instrument, Fx1, and Fx2 columns if those are highlighted.
0 Could act as patch load in last selected synth.
1 Configurable live parameter. (Modulation wheel) 1
2 Move highlighted cell vertically. Absolute. 2
3 Move highlighted cell vertically. Relative. < 64 up, > 64 down. 2
4 Move highlighted cell horizontally. Absolute. 2
5 Move highlighted cell horizontally. Relative. < 64 left, > 64 right. 2
6 Midi reserved.
7 Configurable live parameter. (Volume wheel) 1
8 Adjust note in highlighted cell. Absolute.
9 Adjust note in highlighted cell. Relative. < 64 lower, > 64 higher.
10 Adjust instrument in highlighted cell. Absolute.
11 Adjust instrument in highlighted cell. Relative. < 64 lower, > 64 higher.
12 Adjust Fx1 type in highlighted cell. Absolute.
13 Adjust Fx1 type in highlighted cell. Relative. < 64 lower, > 64 higher.
14 Adjust Fx1 value in highlighted cell. Absolute.
15 Adjust Fx1 value in highlighted cell. Relative. < 64 lower, > 64 higher.
16 Adjust Fx2 type in highlighted cell. Absolute.
17 Adjust Fx2 type in highlighted cell. Relative. < 64 lower, > 64 higher.
18 Adjust Fx2 value in highlighted cell. Absolute.
19 Adjust Fx2 value in highlighted cell. Relative. < 64 lower, > 64 higher.
20 Screen Button 1 set value. 3
21 Screen Button 2 set value. 3
22 Screen Button 3 set value. 3
23 Screen Button 4 set value. 3
24 Screen Button 5 set value. 3
25 Screen Button 6 set value. 3
26 Screen Button 7 set value. 3
27 Screen Button 8 set value. 3
28 Instrument parameters button. 0 = release, 127 = hold, other = momentary touch.
29 Switch to instrument parameters screen 1/2.
30 Perform button. 0 = release, 127 = hold, other = momentary touch.
31 File button. 0 = release, 127 = hold, other = momentary touch.
32 Config button. 0 = release, 127 = hold, other = momentary touch.
33 Master button. 0 = release, 127 = hold, other = momentary touch.
34 Switch to master screen 1/2/3.
35 Sample loader button. 0 = release, 127 = hold, other = momentary touch.
36 Sample playback button. 0 = release, 127 = hold, other = momentary touch.
37 Sample editor button. 0 = release, 127 = hold, other = momentary touch.
38 Midi reserved.
39 Sample recorder button. 0 = release, 127 = hold, other = momentary touch.
40 Song button. 0 = release, 127 = hold, other = momentary touch.
41-48 Keep existing.
49 Note button. 0 = release, 127 = hold, other = momentary touch.
50 Instrument button. 0 = release, 127 = hold, other = momentary touch.
51-62 Keep existing.
63 Fx1 button. 0 = release, 127 = hold, other = momentary touch.
64 Fx2 button. 0 = release, 127 = hold, other = momentary touch.
65 Pattern button. 0 = release, 127 = hold, other = momentary touch.
66 Play button. 0 = release, 127 = hold, other = momentary touch.
67 Copy button. 0 = release, 127 = hold, other = momentary touch.
68 Insert button. 0 = release, 127 = hold, other = momentary touch.
69 Delete button. 0 = release, 127 = hold, other = momentary touch.
70 Rec button. 0 = release, 127 = hold, other = momentary touch.
71-82 Keep existing.
83 Shift button. 0 = release, 127 = hold, other = momentary touch.
84 Up button. 0 = release, 127 = hold, other = momentary touch.
85 Down button. 0 = release, 127 = hold, other = momentary touch.
86 Left button. 0 = release, 127 = hold, other = momentary touch.
87 Right button. 0 = release, 127 = hold, other = momentary touch.
88 Pad grid momentary touch. 0-48, starting from top left. Left to right, top to bottom.
89 Wheel relative. < 64 -1, > 64 +1.
90 Momentary press of up/down. < 64 up, > 64 down.
91 Momentary press of left/right. < 64 left, > 64 right.
92 Alternative input emulation. Bitfield 1. 4
93 Alternative input emulation. Bitfield 2. 4
94 Alternative input emulation. Bitfield 3. 4
95 Alternative input emulation. Bitfield 4. 4
93 Alternative input emulation. Bitfield 5. 4
94 Alternative input emulation. Bitfield 6. 4
95 Alternative input emulation. Bitfield 7. 4
96-101 Midi reserved.
102 Alternative input emulation. Bitfield 8. 4
103 Alternative input emulation. Bitfield 9. 4
104 Alternative input emulation. Bitfield 10. 4
105 Alternative input emulation. Bitfield 11. 4
106 Alternative input emulation. Indexed. 4
107 7-bit ASCII keyboard input. 5
108-119 Available for later expansion.
120-127 Reserved by midi specification.
  1. These are shoved in weirdly because these happen to be the default CC’s assigned to the volume and mod wheels.
  2. Can also function to move the selected settings “square” in the synth patch editor.
  3. Depending on what the screen button would currently do if pressed, this CC changes how it reacts. With screen buttons that are momentary, any value sent will trigger the button. Screen buttons that “select” something for editing with the wheel will instead act like CC 89 and send wheel turn events directly to the column. Screen buttons that are part of an up-down pair will act like the up button < 64 and the down button > 64.
  4. Some midi controllers controllers would be hard to program to with a lot of different CC’s for the buttons, so two alternative schemes are provided. CC 92 to CC 106 each hold 7-bit values where each bit represents the state of one of the buttons on the device plus wheel left and wheel right, you need 11 7-bit bitfields to have 1 bit per control. The other method, CC 107, sends a momentary push of the button identified by bits 0-6, with bit 7 meaning that shift was held.
  5. For the few text input screens, the value of CC 108 will be interpreted as an ASCII character to be entered. \r and \n are interpreted as enter, \b is interpreted as backspace, and 0xFF is interpreted as cancel. Unsupported values are ignored.

The few leftover CC’s could possibly be used for user definable parameters to assign to encoders or faders on a midi controller. NRPN CC’s have been left untouched, so these can be used too.