diff --git a/examples/APCmini-meter.pd b/examples/APCmini-meter.pd new file mode 100644 index 0000000..f56b478 --- /dev/null +++ b/examples/APCmini-meter.pd @@ -0,0 +1,99 @@ +#N canvas 514 171 553 456 10; +#X obj 23 85 touchin 1; +#X obj 23 107 t f f; +#X obj 23 129 div 16; +#X obj 255 129 mod 16; +#X obj 23 151 t b f; +#X obj 23 215 moses; +#X obj 255 151 sel 0 1 2 3 4 5 6 7; +#X msg 255 173 0; +#X msg 282 173 1; +#X msg 309 173 1; +#X obj 23 237 t f f; +#X msg 77 282 1; +#X obj 23 309 pack f f; +#X msg 187 237 \$1 0; +#X obj 97 347 unpack f f; +#X obj 97 394 +; +#X msg 131 282 5; +#X obj 145 321 + 24; +#X obj 97 369 * 8; +#X msg 471 173 5; +#X msg 336 173 2; +#X msg 363 173 2; +#X msg 390 173 3; +#X msg 417 173 3; +#X msg 444 173 4; +#X msg 50 282 1; +#X msg 104 282 5; +#X msg 158 282 3; +#X msg 23 173 0 \, 1 \, 2 \, 3 \, 4; +#X obj 50 260 sel 0 1 2 3 4; +#X obj 97 419 noteout; +#X text 73 129 track number 0..7; +#X text 312 129 meter value 0..15; +#X text 191 282 map row to button color (1=green \, 5=yellow \, 3=red) +; +#X text 69 237 active buttons; +#X text 230 237 inactive buttons; +#X text 191 321 track number gives column \, 24 is first button in +row #4; +#X text 191 394 velocity is 0 (= off) or color; +#X text 191 369 note = row (0..4) * 8 + 24 + column (0..7); +#X text 91 85 pressure on channel 1 is used to send all the values +; +#X text 255 207 map value to the 5 rows (0 means off); +#X text 114 173 run through rows 0..4; +#X text 69 215 split active/inactive; +#X text 24 12 APCmini-meter.pd: a little helper patch to decode MCU +metering for the AKAI APCmini \, lighting up the LEDs in the top 5x8 +button grid. INSTRUCTIONS: Connect the MCU feedback (e.g. \, "mackie +control out" from Ardour) to Pd's MIDI input and Pd's MIDI output to +the APCmini \, press Play and watch the blinkenlights!, f 79; +#X connect 0 0 1 0; +#X connect 1 0 2 0; +#X connect 1 1 3 0; +#X connect 2 0 4 0; +#X connect 3 0 6 0; +#X connect 4 0 28 0; +#X connect 4 1 17 0; +#X connect 5 0 10 0; +#X connect 5 1 13 0; +#X connect 6 0 7 0; +#X connect 6 1 8 0; +#X connect 6 2 9 0; +#X connect 6 3 20 0; +#X connect 6 4 21 0; +#X connect 6 5 22 0; +#X connect 6 6 23 0; +#X connect 6 7 24 0; +#X connect 6 8 19 0; +#X connect 7 0 5 1; +#X connect 8 0 5 1; +#X connect 9 0 5 1; +#X connect 10 0 12 0; +#X connect 10 1 29 0; +#X connect 11 0 12 1; +#X connect 12 0 14 0; +#X connect 13 0 14 0; +#X connect 14 0 18 0; +#X connect 14 1 30 1; +#X connect 15 0 30 0; +#X connect 16 0 12 1; +#X connect 17 0 15 1; +#X connect 18 0 15 0; +#X connect 19 0 5 1; +#X connect 20 0 5 1; +#X connect 21 0 5 1; +#X connect 22 0 5 1; +#X connect 23 0 5 1; +#X connect 24 0 5 1; +#X connect 25 0 12 1; +#X connect 26 0 12 1; +#X connect 27 0 12 1; +#X connect 28 0 5 0; +#X connect 29 0 25 0; +#X connect 29 1 11 0; +#X connect 29 2 26 0; +#X connect 29 3 16 0; +#X connect 29 4 27 0; diff --git a/examples/APCmini.midizaprc b/examples/APCmini.midizaprc index 7ea64ad..75c5f66 100644 --- a/examples/APCmini.midizaprc +++ b/examples/APCmini.midizaprc @@ -17,10 +17,15 @@ JACK_PORTS 2 # dedicated buttons as a Mackie device. But it offers enough controls to be # usable as a basic DAW controller. I tested it with Ardour. -# Setup: In Ardour, enable the Mackie control surface, then connect Ardour's +# SETUP: In Ardour, enable the Mackie control surface, then connect Ardour's # "mackie control" ports to midizap's midi_out and midi_in2 ports, and the # APCmini to midizap's midi_in and midi_out2 ports. +# "BLINKENLIGHTS" ADD-ON: Decoding MCU metering feedback is beyond midizap's +# capabilities, but there's a Pd patch in APCmini-meter.pd which you can hook +# up to Ardour's Mackie control output to show the channel meters in the +# unused top 5x8 button grid. + # PROTOCOL DOCUMENTATION: The Mackie protocol is fairly ubiquitous, but since # the manufacturers can't be bothered to properly *document* their stuff these # days, we have to rely on volunteers who do their work using some reverse