bela is great!
i just finished my multisample/scrambler/livefreezer etc. pedal with heavy/pd. :-)
bela is great!
i just finished my multisample/scrambler/livefreezer etc. pedal with heavy/pd. :-)
Great!' Do we get to see a video/demo/code ?
sure, the pd patch is a mess a.t.m. and the hardware is not yet in a case. but i post the patch here now, and will so later on when it is more polished again.
hardware is just four momentary switches. ah i forgot to add the LEDs (so that is not yet in the patch)
the patch is loosely based around these examples:
http://www.pd-tutorial.com/english/ch03s07.html
it is not granular synthesis however, more some live looping/mangling thing with a lot of character
a couple of questions regarding heavy and pd:
-does it matter if a patch is messily patched to heavy? for example is there more load with numberboxes or sliders in between objects that are not really needed, but just there for debugging? or does heavy take them out anyways (i would assume so, but i seem to get less dropped blocks with less of these objects).
patch:
#N canvas -96 17 1362 746 12;
#X obj 71 742 vd~ b1;
#X obj 47 405 phasor~;
#X obj 48 585 *~ -1;
#X obj 48 610 +~ 1;
#X obj 148 699 sig~ 1;
#X obj 213 707 cos~;
#X obj 149 732 -~;
#X obj 150 757 *~ 0.5;
#X obj 71 786 *~;
#X obj 125 910 dac~;
#X obj 79 672 samphold~;
#X obj 48 699 *~;
#X obj 93 615 sig~;
#X floatatom 177 288 10 0 0 0 - - -, f 10;
#X floatatom 173 27 5 0 0 0 - - -, f 5;
#X obj 206 152 t b f;
#X obj 125 869 *~;
#X obj 157 358 / 44.1;
#X obj 458 722 vd~ b1;
#X obj 434 554 *~ -1;
#X obj 435 587 +~ 1;
#X obj 528 683 sig~ 1;
#X obj 592 690 cos~;
#X obj 529 714 -~;
#X obj 530 739 *~ 0.5;
#X obj 457 771 *~;
#X obj 469 652 samphold~;
#X obj 435 679 *~;
#X obj 470 602 sig~;
#X obj 455 467 +~ 0.5;
#X obj 455 489 wrap~;
#X obj 105 24 t b f;
#X obj 84 253 pow;
#X msg 64 225 2;
#X obj 64 162 / 12;
#X obj 65 186 t b f;
#X obj 86 279 - 1;
#X obj 73 97 /;
#X obj 34 29 t b f;
#X msg 29 64 44100;
#X obj 88 334 *;
#X obj 85 309 f;
#X obj 71 128 t b f;
#X obj 579 -102 touchin;
#X obj 34 -23 line;
#X obj 218 -17 line;
#X msg 28 -71 \$1 200;
#X obj 82 640 lop~ 50;
#X obj 469 629 lop~ 50;
#X floatatom 381 205 5 0 0 0 - - -, f 5;
#X msg 220 -46 \$1 40;
#X obj 409 91 mtof;
#X obj 382 118 * 0.5;
#X obj 94 -298 * 230;
#X obj 505 129 vd~ b2;
#X obj 504 95 line~;
#X obj 189 802 line~;
#X floatatom 341 227 5 0 0 0 - - -, f 5;
#X msg 343 297 \$1 8;
#X obj 341 253 / 127;
#X obj 580 -72 * 32;
#X obj 289 748 delwrite~ b2 4000;
#X obj 612 104 line~;
#X msg 608 65 \$1 200;
#X obj 512 161 *~;
#X obj 534 266 delwrite~ b1 30000;
#X obj 389 334 f;
#X msg 385 367 0 \$1;
#X obj 811 154 adc~;
#X msg 992 396 bang;
#X obj 839 392 line~;
#X obj 780 444 *~;
#X msg 1109 382 0 5;
#X msg 1052 392 1 5;
#X obj 918 411 delay 5;
#X msg 912 446 stop;
#X obj 912 508 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 337 -258 * 30;
#X obj 337 -233 + 8;
#X obj 330 675 clip~ -1 1;
#X obj 297 102 / 80;
#X obj 481 -387 - 1;
#X obj 481 -362 pack 0 0 0;
#N canvas 262 228 513 511 guardaNotas 0;
#N canvas 0 22 247 267 ++ 0;
#X obj 41 40 inlet;
#X obj 110 41 inlet;
#X obj 41 99 f;
#X obj 41 133 + 1;
#X msg 110 82 0;
#X obj 41 165 outlet;
#X msg 41 73 bang;
#X connect 0 0 6 0;
#X connect 1 0 4 0;
#X connect 2 0 3 0;
#X connect 3 0 2 1;
#X connect 3 0 5 0;
#X connect 4 0 2 1;
#X connect 6 0 2 0;
#X restore 50 224 pd ++;
#X obj 50 49 inlet;
#X obj 50 282 *;
#X obj 84 265 > 0;
#X msg 50 198 bang;
#X text 106 228 evita cuenta eterna;
#X obj 50 307 tabwrite orden;
#X obj 104 207 r ordenreset;
#X obj 32 166 tabwrite nota;
#X obj 96 135 tabwrite velocity;
#X obj 240 77 t b f;
#X obj 81 404 outlet;
#X obj 86 108 t b f;
#X obj 16 116 t b f;
#X obj 39 79 unpack f f f;
#X connect 0 0 2 0;
#X connect 1 0 14 0;
#X connect 2 0 6 0;
#X connect 3 0 2 1;
#X connect 4 0 0 0;
#X connect 7 0 0 1;
#X connect 10 1 9 1;
#X connect 10 1 8 1;
#X connect 10 1 6 1;
#X connect 12 1 9 0;
#X connect 12 1 3 0;
#X connect 13 0 11 0;
#X connect 13 1 8 0;
#X connect 13 1 4 0;
#X connect 14 0 13 0;
#X connect 14 1 12 0;
#X connect 14 2 10 0;
#X restore 482 -306 pd guardaNotas;
#X msg 481 -340 \$2 \$3 \$1;
#N canvas 242 173 309 311 changeNote 0;
#X text 91 9 evita redundancia.;
#X obj 70 38 inlet;
#X obj 142 171 &&;
#X obj 72 215 spigot;
#X obj 109 138 == -1;
#X obj 165 149 == -1;
#X obj 142 193 == 0;
#X obj 72 279 outlet;
#X floatatom 210 215 5 0 0 0 - - -, f 5;
#X obj 55 92 t f f;
#X obj 110 93 t f f;
#X obj 43 163 pack;
#X obj 64 66 unpack f f;
#X obj 163 115 unpack f f;
#X connect 1 0 12 0;
#X connect 2 0 6 0;
#X connect 3 0 7 0;
#X connect 3 0 13 0;
#X connect 4 0 2 0;
#X connect 4 0 8 0;
#X connect 5 0 2 1;
#X connect 6 0 3 1;
#X connect 9 0 11 0;
#X connect 9 1 4 0;
#X connect 10 0 11 1;
#X connect 10 1 5 0;
#X connect 11 0 3 0;
#X connect 12 0 9 0;
#X connect 12 1 10 0;
#X connect 13 0 4 1;
#X connect 13 1 5 1;
#X restore 481 -239 pd changeNote;
#N canvas 386 100 412 676 note 0;
#X obj 63 66 t b b b;
#X text 18 603 mensaje midi;
#X obj 63 31 inlet;
#X obj 63 619 outlet;
#X obj 86 254 moses 0;
#X msg 179 237 0;
#X floatatom 191 280 5 0 0 0 - - -, f 5;
#X obj 125 351 f;
#X text 198 257 saca numero mayor;
#X obj 63 368 f;
#X obj 113 181 t f f;
#X text 187 349 numero mayor;
#X text 110 369 indice;
#X floatatom 168 385 5 0 0 0 - - -, f 5;
#X msg 125 321 bang;
#X obj 125 279 t f f;
#X obj 63 395 t f f;
#X obj 63 582 pack;
#X text 43 554 memoria ultima nota;
#X obj 53 492 t f f b;
#N canvas 733 352 236 271 cuenta11 0;
#X obj 56 160 + 1;
#X obj 56 112 until;
#X obj 56 87 t f b;
#X msg 114 120 -1;
#X obj 56 137 f;
#X obj 56 38 inlet;
#X obj 56 184 outlet;
#X msg 56 64 11;
#X connect 0 0 4 1;
#X connect 0 0 6 0;
#X connect 1 0 4 0;
#X connect 2 0 1 0;
#X connect 2 1 3 0;
#X connect 3 0 4 1;
#X connect 4 0 0 0;
#X connect 5 0 7 0;
#X connect 7 0 2 0;
#X restore 113 128 pd cuenta11;
#X msg 165 509 10;
#X obj 235 436 sel 10;
#X text 171 455 reset orden \, evita cuenta eterna;
#X text 149 404 si llega a 10 en "0" \, note off;
#X obj 113 207 tabread orden;
#X obj 235 479 s ordenreset;
#X obj 84 434 tabread velocity;
#X obj 63 462 tabread nota;
#X obj 72 534 tabwrite nota;
#X connect 0 0 9 0;
#X connect 0 1 20 0;
#X connect 0 2 5 0;
#X connect 2 0 0 0;
#X connect 4 1 15 0;
#X connect 5 0 4 1;
#X connect 6 0 4 1;
#X connect 7 0 9 1;
#X connect 9 0 13 0;
#X connect 9 0 16 0;
#X connect 10 0 25 0;
#X connect 10 1 7 1;
#X connect 14 0 7 0;
#X connect 15 0 14 0;
#X connect 15 1 6 0;
#X connect 16 0 28 0;
#X connect 16 1 22 0;
#X connect 16 1 27 0;
#X connect 17 0 3 0;
#X connect 19 0 17 0;
#X connect 19 1 29 0;
#X connect 19 2 21 0;
#X connect 20 0 10 0;
#X connect 21 0 29 1;
#X connect 22 0 26 0;
#X connect 25 0 4 0;
#X connect 27 0 17 1;
#X connect 28 0 19 0;
#X restore 481 -269 pd note;
#X obj 492 -445 notein;
#X obj 451 236 select 0;
#X obj 229 -78 - 60;
#X msg 553 532 1 10;
#X msg 639 526 0 10;
#X msg 686 504 1 10;
#X msg 743 475 0 10;
#X obj 586 335 *~;
#X obj 616 583 line~;
#X obj 718 560 line~;
#X obj 662 337 *~;
#X obj 572 -398 table orden 11;
#X obj 572 -420 table velocity 11;
#X obj 572 -442 table nota 11;
#X obj 1031 671 f;
#X obj 1064 671 + 1;
#X msg 1010 642 0;
#X obj 1034 606 metro 1;
#X obj 946 717 * 44.1;
#X obj 883 586 f;
#X msg 888 617 start \$1;
#X msg 1058 516 stop;
#X obj 229 -484 ctlin;
#X obj 93 -274 + 50;
#X obj 347 -349 loadbang;
#X msg 347 -321 0;
#X obj 492 -417 poly 10 0;
#X obj 481 -213 unpack f f;
#X obj 222 -456 pack f f f;
#X msg 219 -428 \$3 \$2 \$1;
#X obj 879 -338 send bela_setMidi @hv_param;
#X msg 874 -385 hw 1 0 2;
#X obj 873 -415 loadbang;
#X obj 203 -398 route 1;
#X obj 201 -370 route 19 126 127;
#X obj 716 202 phasor~ 0.05;
#X obj 1074 716 select 20000;
#X obj 1185 302 metro 1;
#X obj 1205 215 loadbang;
#X obj 1191 249 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 1183 327 f;
#X obj 1217 327 + 1;
#X msg 1308 304 0;
#X obj 1180 636 tabwrite~ freeze;
#X obj 1293 417 line~;
#X obj 1184 566 spigot;
#X obj 1091 259 == 0;
#X msg 1230 476 bang;
#X obj 1107 466 *~;
#X msg 1139 221 0;
#X obj 1040 269 != 0;
#X obj 594 177 line~;
#X obj 564 217 *~;
#X msg 629 152 \$1 5;
#X obj 1276 209 line~;
#X obj 1467 230 *~;
#X msg 1311 184 \$1 5;
#X obj 1061 -3 tabread4~ freeze;
#X obj 922 -189 send bela_setDigital @hv_param;
#X obj 1206 -1 tabread4~ freeze;
#X msg 1250 363 1 8;
#X msg 1308 357 0 8;
#X obj 1232 -118 wrap~;
#X obj 1117 26 sig~ 1;
#X obj 1179 33 cos~;
#X obj 1118 57 -~;
#X obj 1119 82 *~ 0.5;
#X obj 1085 104 *~;
#X obj 1255 33 sig~ 1;
#X obj 1319 40 cos~;
#X obj 1256 64 -~;
#X obj 1257 89 *~ 0.5;
#X obj 1223 111 *~;
#X obj 1342 -5 tabread4~ freeze;
#X obj 1485 -7 tabread4~ freeze;
#X obj 1478 -115 wrap~;
#X obj 1398 24 sig~ 1;
#X obj 1460 31 cos~;
#X obj 1399 55 -~;
#X obj 1400 80 *~ 0.5;
#X obj 1366 102 *~;
#X obj 1536 31 sig~ 1;
#X obj 1600 38 cos~;
#X obj 1537 62 -~;
#X obj 1538 87 *~ 0.5;
#X obj 1504 109 *~;
#X obj 1355 -99 wrap~;
#X obj 1480 -137 +~ 0.75;
#X obj 1235 -138 +~ 0.25;
#X obj 1334 -130 +~ 0.5;
#X obj 1061 -27 *~ 4410;
#X obj 1207 -31 *~ 4410;
#X obj 1346 -28 *~ 4410;
#X obj 1482 -33 *~ 4410;
#X obj 1246 -249 phasor~ 10;
#X obj 1087 166 table freeze 4410;
#X obj 1266 331 select 100 92;
#X msg 508 57 \$1 800;
#X obj 1209 758 max;
#X obj 1251 757 f;
#X msg 1264 703 0;
#X obj 1233 817 * 44.1;
#X obj 1382 551 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1
0 1;
#X obj 806 -138 r bela_digitalIn11;
#X msg 830 -288 in 11 \, in 12 \, in 13 \, in 14;
#X msg 819 748 \$1 2000;
#X obj 828 779 line;
#X obj 829 836 select 1;
#X text 960 -141 freeze;
#X obj 1382 451 r bela_digitalIn12;
#X obj 1209 662 loadbang;
#X text 1542 451 live/buffer;
#X text 720 676 long press reset buffer;
#X text 878 159 record into buffer;
#X obj 829 807 change;
#X obj 741 870 f;
#X obj 776 870 + 1;
#X msg 912 889 0;
#X obj 741 893 select 0 1 2 3;
#X text 741 695 switch sample slot;
#X msg 1011 785 1000;
#X obj 1069 807 /;
#X obj 1066 768 t b f;
#X obj 990 344 select 1 0;
#X obj 884 180 r bela_digitalIn14;
#X obj 743 712 r bela_digitalIn13;
#X obj 957 275 debounce;
#X obj 807 -102 debounce;
#X obj 1382 483 debounce;
#X obj 1078 899 line~;
#X obj 1237 904 line~;
#X obj 725 239 *~;
#X obj 736 749 debounce;
#X obj 1380 520 select 1;
#X obj 582 462 select 0;
#X obj 533 402 loadbang;
#X msg 558 436 0;
#X obj 735 777 select 0 1;
#X obj 726 826 spigot;
#X msg 772 800 1;
#X msg 830 862 0;
#X msg 1076 865 \$1 10;
#X msg 1234 865 \$1 5;
#X obj 348 843 table bufferlen 4;
#X obj 431 943 tabwrite bufferlen;
#X obj 586 941 tabread bufferlen;
#X msg 516 811 \; bufferlen 0 0 0 0 0;
#X obj 517 786 loadbang;
#X obj 715 57 table buffer3 882000;
#X obj 715 3 table buffer1 882000;
#X obj 715 30 table buffer2 882000;
#X obj 716 -24 table buffer0 882000;
#X obj 724 290 tabread4~ buffer0;
#X obj 836 659 tabwrite~ buffer0;
#X msg 740 922 set buffer0;
#X msg 740 946 set buffer1;
#X msg 740 971 set buffer2;
#X msg 740 995 set buffer3;
#X obj 679 995 s slot;
#X obj 769 257 r slot;
#X obj 830 567 r slot;
#X obj 348 865 table pos 4;
#X obj 296 1015 tabwrite pos;
#X obj 454 1007 tabread pos;
#X msg 516 852 \; pos 0 0 0 0 0;
#X obj 451 889 t f f f f;
#X text 715 -47 four sample slots each 20secs;
#X text 647 -104 aftertouch input;
#X text 302 72 feedback;
#X text 370 -232 decay control;
#X text 1159 -286 freeze with 4 overlapping sample players to smooth
out changes;
#X connect 0 0 8 0;
#X connect 1 0 2 0;
#X connect 1 0 5 0;
#X connect 1 0 10 1;
#X connect 1 0 29 0;
#X connect 2 0 3 0;
#X connect 3 0 11 0;
#X connect 4 0 6 0;
#X connect 5 0 6 1;
#X connect 6 0 7 0;
#X connect 7 0 8 1;
#X connect 8 0 16 0;
#X connect 8 0 79 0;
#X connect 10 0 11 1;
#X connect 11 0 0 0;
#X connect 12 0 47 0;
#X connect 13 0 17 0;
#X connect 14 0 15 0;
#X connect 14 0 34 0;
#X connect 15 0 13 0;
#X connect 16 0 9 0;
#X connect 16 0 9 1;
#X connect 17 0 12 0;
#X connect 17 0 28 0;
#X connect 18 0 25 0;
#X connect 19 0 20 0;
#X connect 20 0 27 0;
#X connect 21 0 23 0;
#X connect 22 0 23 1;
#X connect 23 0 24 0;
#X connect 24 0 25 1;
#X connect 25 0 16 0;
#X connect 25 0 79 0;
#X connect 26 0 27 1;
#X connect 27 0 18 0;
#X connect 28 0 48 0;
#X connect 29 0 30 0;
#X connect 30 0 19 0;
#X connect 30 0 26 1;
#X connect 30 0 22 0;
#X connect 31 0 14 0;
#X connect 31 1 13 0;
#X connect 32 0 36 0;
#X connect 33 0 32 0;
#X connect 34 0 35 0;
#X connect 35 0 33 0;
#X connect 35 1 32 1;
#X connect 36 0 41 0;
#X connect 37 0 42 0;
#X connect 38 0 39 0;
#X connect 38 1 37 1;
#X connect 39 0 37 0;
#X connect 40 0 1 0;
#X connect 41 0 40 0;
#X connect 42 0 41 0;
#X connect 42 1 40 1;
#X connect 43 0 60 0;
#X connect 44 0 31 0;
#X connect 44 0 38 0;
#X connect 45 0 14 0;
#X connect 46 0 44 0;
#X connect 47 0 10 0;
#X connect 48 0 26 0;
#X connect 50 0 45 0;
#X connect 51 0 52 0;
#X connect 52 0 49 0;
#X connect 52 0 47 1;
#X connect 52 0 48 1;
#X connect 53 0 110 0;
#X connect 54 0 64 0;
#X connect 55 0 54 0;
#X connect 56 0 16 1;
#X connect 57 0 59 0;
#X connect 58 0 56 0;
#X connect 59 0 58 0;
#X connect 60 0 184 0;
#X connect 62 0 64 1;
#X connect 63 0 62 0;
#X connect 64 0 135 0;
#X connect 64 0 139 0;
#X connect 66 0 67 0;
#X connect 67 0 56 0;
#X connect 68 0 71 0;
#X connect 68 0 94 0;
#X connect 68 1 71 0;
#X connect 68 1 94 0;
#X connect 69 0 104 0;
#X connect 69 0 76 0;
#X connect 70 0 71 1;
#X connect 71 0 240 0;
#X connect 72 0 70 0;
#X connect 73 0 70 0;
#X connect 74 0 75 0;
#X connect 75 0 240 0;
#X connect 76 0 106 0;
#X connect 77 0 78 0;
#X connect 78 0 66 1;
#X connect 79 0 61 0;
#X connect 80 0 63 0;
#X connect 81 0 82 0;
#X connect 82 0 84 0;
#X connect 83 0 86 0;
#X connect 84 0 83 0;
#X connect 85 0 114 0;
#X connect 86 0 85 0;
#X connect 87 0 113 0;
#X connect 87 1 113 1;
#X connect 88 0 66 0;
#X connect 88 1 57 0;
#X connect 89 0 50 0;
#X connect 90 0 95 0;
#X connect 91 0 95 0;
#X connect 92 0 96 0;
#X connect 93 0 96 0;
#X connect 94 0 135 0;
#X connect 94 0 139 0;
#X connect 95 0 94 1;
#X connect 96 0 97 1;
#X connect 97 0 135 0;
#X connect 97 0 139 0;
#X connect 101 0 102 0;
#X connect 101 0 105 0;
#X connect 101 0 123 0;
#X connect 101 0 185 0;
#X connect 101 0 249 0;
#X connect 102 0 101 1;
#X connect 103 0 101 0;
#X connect 103 0 107 0;
#X connect 104 0 101 0;
#X connect 105 0 106 1;
#X connect 106 0 107 0;
#X connect 107 0 240 0;
#X connect 108 0 104 0;
#X connect 109 0 115 0;
#X connect 109 1 115 1;
#X connect 109 2 115 2;
#X connect 110 0 46 0;
#X connect 111 0 112 0;
#X connect 112 0 77 0;
#X connect 113 0 81 0;
#X connect 113 1 82 1;
#X connect 113 2 82 2;
#X connect 114 0 51 0;
#X connect 114 0 89 0;
#X connect 114 1 88 0;
#X connect 115 0 116 0;
#X connect 116 0 120 0;
#X connect 118 0 117 0;
#X connect 119 0 118 0;
#X connect 119 0 191 0;
#X connect 120 0 121 0;
#X connect 121 0 53 0;
#X connect 121 1 77 0;
#X connect 121 2 80 0;
#X connect 122 0 218 0;
#X connect 123 0 103 0;
#X connect 124 0 127 0;
#X connect 125 0 126 0;
#X connect 125 0 136 0;
#X connect 126 0 124 0;
#X connect 127 0 128 0;
#X connect 127 0 183 0;
#X connect 128 0 127 1;
#X connect 129 0 127 0;
#X connect 131 0 135 1;
#X connect 132 0 130 0;
#X connect 133 0 132 1;
#X connect 133 0 140 0;
#X connect 134 0 132 0;
#X connect 135 0 130 0;
#X connect 136 0 133 0;
#X connect 137 0 143 0;
#X connect 138 0 139 1;
#X connect 139 0 65 0;
#X connect 140 0 138 0;
#X connect 141 0 142 1;
#X connect 142 0 65 0;
#X connect 143 0 141 0;
#X connect 144 0 154 0;
#X connect 146 0 159 0;
#X connect 147 0 131 0;
#X connect 148 0 131 0;
#X connect 149 0 156 0;
#X connect 149 0 178 0;
#X connect 150 0 152 0;
#X connect 151 0 152 1;
#X connect 152 0 153 0;
#X connect 153 0 154 1;
#X connect 154 0 142 0;
#X connect 155 0 157 0;
#X connect 156 0 157 1;
#X connect 157 0 158 0;
#X connect 158 0 159 1;
#X connect 159 0 142 0;
#X connect 160 0 167 0;
#X connect 161 0 172 0;
#X connect 162 0 169 0;
#X connect 162 0 180 0;
#X connect 163 0 165 0;
#X connect 164 0 165 1;
#X connect 165 0 166 0;
#X connect 166 0 167 1;
#X connect 167 0 142 0;
#X connect 168 0 170 0;
#X connect 169 0 170 1;
#X connect 170 0 171 0;
#X connect 171 0 172 1;
#X connect 172 0 142 0;
#X connect 173 0 164 0;
#X connect 173 0 179 0;
#X connect 174 0 162 0;
#X connect 175 0 149 0;
#X connect 176 0 173 0;
#X connect 177 0 144 0;
#X connect 178 0 146 0;
#X connect 179 0 160 0;
#X connect 180 0 161 0;
#X connect 181 0 151 0;
#X connect 181 0 174 0;
#X connect 181 0 175 0;
#X connect 181 0 176 0;
#X connect 181 0 177 0;
#X connect 183 0 129 0;
#X connect 183 0 147 0;
#X connect 183 0 134 0;
#X connect 183 1 148 0;
#X connect 184 0 55 0;
#X connect 185 0 186 0;
#X connect 186 0 185 1;
#X connect 186 0 188 0;
#X connect 186 0 209 0;
#X connect 186 0 231 0;
#X connect 187 0 186 0;
#X connect 187 0 101 0;
#X connect 187 0 202 0;
#X connect 188 0 229 0;
#X connect 189 0 221 0;
#X connect 190 0 214 0;
#X connect 191 0 145 0;
#X connect 192 0 193 0;
#X connect 193 0 201 0;
#X connect 194 0 187 0;
#X connect 194 0 227 0;
#X connect 196 0 215 0;
#X connect 197 0 187 0;
#X connect 201 0 194 0;
#X connect 202 0 203 0;
#X connect 202 0 205 0;
#X connect 202 0 252 0;
#X connect 203 0 202 1;
#X connect 204 0 202 1;
#X connect 205 0 241 0;
#X connect 205 1 242 0;
#X connect 205 2 243 0;
#X connect 205 3 204 0;
#X connect 205 3 244 0;
#X connect 207 0 208 0;
#X connect 208 0 228 0;
#X connect 209 0 207 0;
#X connect 209 1 208 1;
#X connect 210 0 69 0;
#X connect 210 0 73 0;
#X connect 210 1 72 0;
#X connect 210 1 108 0;
#X connect 210 1 74 0;
#X connect 211 0 213 0;
#X connect 212 0 219 0;
#X connect 212 0 192 0;
#X connect 213 0 210 0;
#X connect 214 0 137 0;
#X connect 214 0 133 0;
#X connect 215 0 220 0;
#X connect 216 0 122 0;
#X connect 217 0 218 1;
#X connect 218 0 239 0;
#X connect 219 0 224 0;
#X connect 220 0 189 0;
#X connect 221 0 90 0;
#X connect 221 0 93 0;
#X connect 221 1 91 0;
#X connect 221 1 92 0;
#X connect 222 0 223 0;
#X connect 223 0 221 0;
#X connect 224 0 225 0;
#X connect 224 1 226 0;
#X connect 225 0 202 0;
#X connect 226 0 225 1;
#X connect 227 0 225 1;
#X connect 228 0 216 0;
#X connect 229 0 217 0;
#X connect 232 0 186 0;
#X connect 234 0 233 0;
#X connect 234 0 251 0;
#X connect 239 0 97 0;
#X connect 241 0 245 0;
#X connect 242 0 245 0;
#X connect 243 0 245 0;
#X connect 244 0 245 0;
#X connect 246 0 239 0;
#X connect 247 0 240 0;
#X connect 250 0 101 0;
#X connect 252 0 250 0;
#X connect 252 1 249 1;
#X connect 252 2 232 0;
#X connect 252 3 231 1;
debounce abstraction (from one of the bela examples):
#N canvas 312 58 552 440 10;
#X obj 54 34 inlet;
#X obj 61 319 outlet;
#X obj 157 113 \$1;
#X obj 53 162 spigot;
#X obj 109 109 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X obj 157 88 loadbang;
#X obj 154 189 \$1;
#X msg 78 85 0;
#X msg 122 75 1;
#X text 143 36 Debouncer for float inputs;
#X obj 158 142 != 0;
#X obj 157 165 select 1;
#X obj 81 217 delay 8;
#X obj 59 56 t b f;
#X text 198 115 8ms default time \, or first creation argument;
#X obj 68 186 bang;
#X obj 61 292 change;
#X obj 81 253 f;
#X connect 0 0 13 0;
#X connect 2 0 10 0;
#X connect 3 0 15 0;
#X connect 3 0 16 0;
#X connect 4 0 3 1;
#X connect 5 0 2 0;
#X connect 5 0 8 0;
#X connect 6 0 12 1;
#X connect 7 0 4 0;
#X connect 8 0 4 0;
#X connect 10 0 11 0;
#X connect 11 0 6 0;
#X connect 12 0 8 0;
#X connect 12 0 17 0;
#X connect 13 0 7 0;
#X connect 13 1 3 0;
#X connect 13 1 17 1;
#X connect 15 0 12 0;
#X connect 16 0 1 0;
#X connect 17 0 16 0;