Skip to content

Commit 938a119

Browse files
author
adc
committed
3 more descs done well enough: push, istage, eowave.
1 parent c0cfda7 commit 938a119

File tree

3 files changed

+196
-151
lines changed

3 files changed

+196
-151
lines changed

Modality/MKtlDescriptions/ableton-push.desc.scd

+122-98
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
/*
2+
MKtlDesc.loadDescs("*push"); m.free; m = MKtl(\push, "*push").trace; m.gui;
3+
*/
14
(
25
deviceName: "Ableton Push",
36
protocol: \midi,
@@ -36,20 +39,41 @@ deviceInfo: (
3639
elementsDesc: (
3740
shared: (midiChan: 0),
3841
elements: [
42+
//------ encoderTopRow
43+
(
44+
key: \kn,
45+
elements: [
46+
(
47+
key: \touch,
48+
shared: (
49+
elementType: 'pad', groupType: \noteOnOffBut,
50+
spec: \midiVel
51+
),
52+
elements: ( 0.. 8 ).collect { |num, i|
53+
(
54+
key: (num+1).asSymbol, midiNum: num,
55+
shared: (style: (row: -0.5, column: i + 2, height: 0.7))
56+
)
57+
}
58+
),
59+
(
60+
key: \turn,
61+
shared: (midiMsgType: \cc, elementType: \encoder, spec: \midiCC),
62+
elements: (71..79).collect { |num, i|
63+
(midiNum: num, style: (row: 0, column: 2 + i))
64+
}
65+
)
66+
]
67+
),
3968
//------ pads -------------
4069
(
4170
key: \pad,
42-
shared: (elementType: \pad),
71+
shared: (elementType: \pad, groupType: \noteOnOffTouch),
4372
elements: (36..99).clump(8).reverse.collect { |rownums, i|
4473
(
4574
elements: rownums.collect { |num, j|
4675
(
47-
shared: (midiNum: num),
48-
elements: [
49-
(key: \on, 'midiMsgType': 'noteOn', 'spec': 'midiVel', ioType: \inout),
50-
(key: \off, 'midiMsgType': 'noteOff', 'spec': 'midiVel', ioType: \in),
51-
(key: \touch, 'midiMsgType': 'polyTouch', 'spec': 'midiCC', ioType: \in),
52-
]
76+
shared: (midiNum: num, style: (row: i + 4, column: j + 2))
5377
)
5478
}
5579
)
@@ -59,90 +83,82 @@ elementsDesc: (
5983
(
6084
key: \ribbon,
6185
elements: [
62-
MKtlDesc.notePair(\touch, 12,
86+
(
87+
key: \touch, midiNum: 12,
88+
groupType: \noteOnOffBut,
6389
shared: (
64-
elementType: 'button',
90+
groupType: \noteOnOffBut,
91+
elementType: 'pad',
6592
midiChan: 0,
66-
spec: 'midiNote'
93+
spec: 'midiBut',
94+
style: (row: 4, column: 1)
6795
)
6896
),
6997
(
7098
key: \bend,
7199
midiMsgType: 'bend',
72100
elementType: 'ribbon',
73-
spec: 'midiBend'
74-
)
75-
]
76-
),
77-
//------ encoderTopRow
78-
(
79-
key: \kn,
80-
elements: [
81-
(
82-
key: \touch,
83-
shared: (
84-
elementType: 'button',
85-
spec: \midiVel
86-
),
87-
elements: ( 0.. 8).collect { |num|
88-
MKtlDesc.notePair((num+1).asSymbol, num)
89-
}
90-
),
91-
(
92-
key: \turn,
93-
shared: (midiMsgType: \cc, elementType: \encoder,spec: \midiCC),
94-
elements: (71..79).collect { |num| (midiNum: num) }
101+
spec: 'midiBend',
102+
style: (row: 5, column: 1, height: 7)
95103
)
96104
]
97105
),
98106
//------ side encoders (not in a group because very different in experience)
99107
(
100108
key: \knLeft,
101109
elements: [
102-
MKtlDesc.notePair(\touch, 10,
110+
(
111+
key: \touch, midiNum: 10,
112+
groupType: \noteOnOffBut,
103113
shared: (
104-
elementType: \button,
105-
spec: \midiVel
106-
114+
elementType: \pad, groupType: \noteOnOffBut,
115+
spec: \midiVel,
116+
style: (row: 3, column: 0, height: 0.4)
107117
),
108118
),
109119
(
110120
key: \turn,
111121
midiMsgType: \cc,
112122
elementType: \encoder,
113123
midiNum: 14,
114-
spec: \midiBut
124+
spec: \midiBut,
125+
style: (row: 3.4, column: 0, height: 0.8)
115126
)
116127
]
117128
),
118129
(
119130
key: \knRight,
120131
elements: [
121-
MKtlDesc.notePair(\touch, 9,
132+
(
133+
key: \touch, midiNum: 9,
134+
groupType: \noteOnOffBut,
122135
shared: (
123-
elementType: \button,
124-
spec: \midiVel
125-
136+
elementType: \pad, groupType: \noteOnOffBut,
137+
spec: \midiVel,
138+
style: (row: 3, column: 1, height: 0.4)
126139
),
127140
),
128141
(
129142
key: \turn,
130143
midiMsgType: \cc,
131144
elementType: \encoder,
132145
midiNum: 15,
133-
spec: \midiBut
146+
spec: \midiBut,
147+
style: (row: 3.4, column: 1, height: 0.8)
134148
)
135149
]
136150
),
137151
//------ color button rows
138152
(
139153
key: \bt,
140-
shared: (midiMsgType: 'cc', elementType: 'button',
154+
shared: (midiMsgType: 'cc', elementType: 'pad',
141155
spec: 'midiCC', ioType: \inout),
142156
elements: [(20..27), (102..109)].collect { |row, i|
143157
(
158+
shared: (groupType: \noteOnOffBut),
144159
elements: row.collect { |num, j|
145-
(midiNum: num)
160+
(midiNum: num,
161+
shared: (style: (row: i * 0.5 + 3, column: j + 2, height: 0.6)))
146162
})
147163
}
148164
),
@@ -153,65 +169,73 @@ elementsDesc: (
153169
shared: (midiMsgType: 'cc', elementType: 'button',
154170
spec: 'midiCC', ioType: \inout),
155171
elements: [
156-
(key: '132t', midiNum: 43),
157-
(key: '132', midiNum: 42),
158-
(key: '116t', midiNum: 41),
159-
(key: '116', midiNum: 40),
160-
(key: '18t', midiNum: 39),
161-
(key: '18', midiNum: 38),
162-
(key: '14t', midiNum: 37),
163-
(key: '14', midiNum: 36)
172+
(key: '132t', midiNum: 43, style: (row: 4, column: 10)),
173+
(key: '132', midiNum: 42, style: (row: 5, column: 10)),
174+
(key: '116t', midiNum: 41, style: (row: 6, column: 10)),
175+
(key: '116', midiNum: 40, style: (row: 7, column: 10)),
176+
(key: '18t', midiNum: 39, style: (row: 8, column: 10)),
177+
(key: '18', midiNum: 38, style: (row: 9, column: 10)),
178+
(key: '14t', midiNum: 37, style: (row: 10, column: 10)),
179+
(key: '14', midiNum: 36, style: (row: 11,column: 10))
164180
]
165181
),
166-
//------ ctl buttons
182+
// // ------ ctl buttons
167183
(
168184
key: \btCtl,
169185
shared: (midiMsgType: 'cc', elementType: 'button',
170186
spec: 'midiCC', ioType: \inout),
171187
elements: [
172-
(key: \tapTempo, midiNum: 3),
173-
(key: \metronome, midiNum: 9),
174-
(key: \undo, midiNum: 119),
175-
(key: \delete, midiNum: 118),
176-
(key: \double, midiNum: 117),
177-
(key: \quantize, midiNum: 116),
178-
(key: \fixedLength, midiNum: 90),
179-
(key: \automation, midiNum: 89),
180-
(key: \duplicate, midiNum: 88),
181-
(key: \new, midiNum: 87),
182-
(key: \record, midiNum: 86),
183-
(key: \play, midiNum: 85),
184-
(key: \stop, midiNum: 29),
185-
(key: \master, midiNum: 28),
186-
(key: \volume, midiNum: 114),
187-
(key: \track, midiNum: 112),
188-
189-
(key: \device, midiNum: 110),
190-
(key: \in, midiNum: 62),
191-
(key: \mute, midiNum: 60),
192-
(key: \scales, midiNum: 58),
193-
(key: \repeat, midiNum: 56),
194-
(key: \octaveDown, midiNum: 54),
195-
(key: \addEffect, midiNum: 52),
196-
(key: \note, midiNum: 50),
197-
(key: \select, midiNum: 48),
198-
199-
(key: \panSend, midiNum: 115),
200-
(key: \clip, midiNum: 113),
201-
(key: \browse, midiNum: 111),
202-
(key: \out, midiNum: 63),
203-
(key: \solo, midiNum: 61),
204-
(key: \user, midiNum: 59),
205-
(key: \accent, midiNum: 57),
206-
(key: \octaveUp, midiNum: 55),
207-
208-
(key: \addTrack, midiNum: 53),
209-
(key: \session, midiNum: 51),
210-
(key: \shift, midiNum: 49),
211-
(key: \left, midiNum: 44),
212-
(key: \right, midiNum: 45),
213-
(key: \up, midiNum: 46),
214-
(key: \down, midiNum: 47)
188+
(key: \tapTempo, midiNum: 3, style: (row: 1, column: 0)),
189+
(key: \metronome, midiNum: 9, style: (row: 2, column: 0, height: 0.7)),
190+
191+
(key: \undo, midiNum: 119, style: (row: 4, column: 0, height: 0.8)),
192+
(key: \delete, midiNum: 118, style: (row: 4.7, column: 0, height: 0.8)),
193+
(key: \double, midiNum: 117, style: (row: 5.4, column: 0, height: 0.8)),
194+
(key: \quantize, midiNum: 116, style: (row: 6.1, column: 0, height: 0.8)),
195+
196+
(key: \fixedLength, midiNum: 90, style: (row: 7, column: 0, height: 0.8)),
197+
(key: \automation, midiNum: 89, style: (row: 7.7, column: 0, height: 0.8)),
198+
(key: \duplicate, midiNum: 88, style: (row: 8.4, column: 0, height: 0.8)),
199+
(key: \new, midiNum: 87, style: (row: 9, column: 0)),
200+
(key: \record, midiNum: 86, style: (row: 10, column: 0)),
201+
(key: \play, midiNum: 85, style: (row: 11, column: 0)),
202+
203+
(key: \master, midiNum: 28, style: (row: 3.0, column: 10, height: 0.6)),
204+
(key: \stop, midiNum: 29, style: (row: 3.5, column: 10, height: 0.6)),
205+
206+
207+
(key: \volume, midiNum: 114, style: (row: 1.0, column: 11, height: 0.8)),
208+
(key: \track, midiNum: 112, style: (row: 1.6, column: 11, height: 0.8)),
209+
(key: \device, midiNum: 110, style: (row: 2.2, column: 11, height: 0.8)),
210+
211+
(key: \in, midiNum: 62, style: (row: 3.0, column: 11, height: 0.8)),
212+
(key: \mute, midiNum: 60, style: (row: 3.6, column: 11, height: 0.8)),
213+
(key: \scales, midiNum: 58, style: (row: 4.2, column: 11, height: 0.8)),
214+
(key: \repeat, midiNum: 56, style: (row: 4.8, column: 11, height: 0.8)),
215+
(key: \octaveDown,midiNum:54, style: (row: 5.4, column: 11, height: 0.8)),
216+
217+
(key: \addEffect,midiNum:52, style:(row: 7.0, column: 11, height: 0.8)),
218+
(key: \note, midiNum: 50, style: (row: 7.6, column: 11, height: 0.8)),
219+
(key: \select, midiNum: 48, style: (row: 8.2, column: 11, height: 0.8)),
220+
221+
(key: \panSend, midiNum: 115, style: (row: 1.0, column: 12, height: 0.8)),
222+
(key: \clip, midiNum: 113, style: (row: 1.6, column: 12, height: 0.8)),
223+
(key: \browse, midiNum: 111, style: (row: 2.2, column: 12, height: 0.8)),
224+
225+
(key: \out, midiNum: 63, style: (row: 3.0, column: 12, height: 0.8)),
226+
(key: \solo, midiNum: 61, style: (row: 3.6, column: 12, height: 0.8)),
227+
(key: \user, midiNum: 59, style: (row: 4.2, column: 12, height: 0.8)),
228+
(key: \accent, midiNum: 57, style: (row: 4.8, column: 12, height: 0.8)),
229+
(key: \octaveUp,midiNum: 55, style: (row: 5.4, column: 12, height: 0.8)),
230+
231+
(key: \addTrack,midiNum: 53, style: (row: 7.0, column: 12, height: 0.8)),
232+
(key: \session, midiNum: 51, style: (row: 7.6, column: 12, height: 0.8)),
233+
(key: \shift, midiNum: 49, style: (row: 8.2, column: 12, height: 0.8)),
234+
235+
(key: \left, midiNum: 44, style: (row: 9.8, column: 11, height: 0.8)),
236+
(key: \right, midiNum: 45, style: (row: 9.8, column: 12, height: 0.8)),
237+
(key: \up, midiNum: 46, style: (row: 9.2, column: 11.5, height: 0.8)),
238+
(key: \down, midiNum: 47, style: (row: 10.4, column: 11.5, height: 0.8))
215239
]
216240
),
217241
(
@@ -220,8 +244,8 @@ elementsDesc: (
220244
spec: 'midiCC', ioType: \in
221245
),
222246
elements: [
223-
(key: '1', midiNum: 64),
224-
(key: '2', midiNum: 69)
247+
(key: '1', midiNum: 64, style: (row: 11, column: 11)),
248+
(key: '2', midiNum: 69, style: (row: 11, column: 12))
225249
]
226250

227251
)

Modality/MKtlDescriptions/eowave-ribbon.desc.scd

+30-28
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/*
22
needs initialisation messages for different configs,
33
see github/modality #24
4+
MKtlDesc.loadDescs("eowave*");
5+
m.free; m = MKtl(\eo, "eowave*").trace.gui;
46
*/
57

68
(
@@ -29,36 +31,36 @@ deviceInfo: (
2931
),
3032

3133
elementsDesc: (
34+
shared: (midiChan: 0),
3235
elements: [
33-
// ribbon
34-
// [ noteOn, val, 127, num, 78, chan, 0, src, -1477523613 ]
35-
// [ noteOff, val, 0, num, 78, chan, 0, src, -1477523613 ]
36+
// ribbon
37+
// [ noteOn, val, 127, num, 78, chan, 0, src, -1477523613 ]
38+
// [ noteOff, val, 0, num, 78, chan, 0, src, -1477523613 ]
3639
(
37-
key: \ribbon,
38-
shared: (midiChan: 0),
39-
elements: [
40-
(
41-
key: \touch,
42-
shared: (elementType: \slider, spec: \midiBut),
43-
elements: (36..82).collect {|num, i|
44-
MKtlDesc.notePair(i, num, (style: (row: 0, column: i)))
45-
}
46-
),
47-
(
48-
key: \bend,
49-
midiMsgType: \bend, elementType: \slider, midiNum: 0, spec: \midiBend
50-
),
51-
(
52-
key: \pressure,
53-
midiMsgType: \cc, elementType: \slider, midiNum: 7, spec: \midiCC
54-
),
55-
// expressionPad
56-
// [ cc, val, 0, num, 1, chan, 0, src, -1477523613 ]
57-
(
58-
key: \pad,
59-
midiMsgType: \cc, elementType: \pad, midiNum: 1, spec: \midiCC
60-
)
61-
]
40+
key: \rib,
41+
shared: (elementType: \pad, groupType: \noteOnOffBut, spec: \midiBut),
42+
elements: (36..82).collect {|num, i|
43+
(key: i, midiNum: num, shared:
44+
(style: (row: 0, column: i * 0.8, height: 1.5, width: 0.9,
45+
showLabel: true, label: i)))
46+
}
47+
),
48+
(
49+
key: \bend,
50+
midiMsgType: \bend, elementType: \slider, midiNum: 0, spec: \midiBend,
51+
style: (row: 1.5, column: 3, width: 4, height: 1)
52+
),
53+
(
54+
key: \pressure,
55+
midiMsgType: \cc, elementType: \slider, midiNum: 7, spec: \midiCC,
56+
style: (row: 1.5, column: 8, width: 4, height: 1)
57+
),
58+
// expressionPad
59+
// [ cc, val, 0, num, 1, chan, 0, src, -1477523613 ]
60+
(
61+
key: \pad,
62+
midiMsgType: \cc, elementType: \pad, midiNum: 1, spec: \midiCC,
63+
style: (row: 1.5, column: 0, width: 2)
6264
)
6365
]
6466
)

0 commit comments

Comments
 (0)