From 079e86651a3d9237b7a861489a26045f06521333 Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Wed, 9 Apr 2008 22:55:46 +0000 Subject: implemented both directions of Firmata string and generic sysex message support svn path=/trunk/externals/hardware/arduino/; revision=9689 --- arduino.pd | 131 ++++++++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 103 insertions(+), 28 deletions(-) (limited to 'arduino.pd') diff --git a/arduino.pd b/arduino.pd index 0b016b6..729fc35 100644 --- a/arduino.pd +++ b/arduino.pd @@ -1,10 +1,10 @@ -#N canvas 195 408 644 371 10; +#N canvas 581 464 644 371 10; #X obj 377 9 import hardware flatspace iemlib mapping; #X text 321 336 released under the GNU GPL; #X obj 61 19 inlet; #X obj 61 297 outlet; #X obj 544 297 outlet; -#N canvas 719 22 683 345 command 0; +#N canvas 7 503 712 343 command 0; #X obj 24 7 inlet; #X obj 281 289 outlet; #N canvas 729 244 503 311 digital-out 0; @@ -45,7 +45,7 @@ #X connect 9 1 4 0; #X connect 10 0 2 0; #X connect 10 1 4 0; -#X restore 377 118 pd digital-out; +#X restore 326 122 pd digital-out; #N canvas 310 221 540 347 pinMode 0; #X obj 190 11 inlet; #X obj 289 307 outlet; @@ -75,7 +75,7 @@ #X connect 12 0 1 0; #X connect 13 0 12 0; #X connect 13 1 1 0; -#X restore 280 93 pd pinMode; +#X restore 238 94 pd pinMode; #N canvas 300 373 372 380 pwm 0; #X obj 44 14 inlet; #X obj 44 312 outlet; @@ -98,8 +98,8 @@ #X connect 8 0 6 2; #X connect 9 0 6 1; #X restore 24 94 pd pwm; -#X msg 359 93 info; -#X msg 471 132 249; +#X msg 307 94 info; +#X msg 420 136 249; #N canvas 0 22 462 312 analogIns 0; #X obj 64 7 inlet; #X obj 69 263 outlet; @@ -125,7 +125,7 @@ #X connect 8 0 3 1; #X connect 9 0 3 0; #X connect 10 0 9 0; -#X restore 106 94 pd analogIns; +#X restore 69 94 pd analogIns; #N canvas 0 22 458 308 digitalIns 0; #X obj 98 26 inlet; #X obj 98 264 outlet; @@ -141,13 +141,84 @@ #X connect 4 0 5 0; #X connect 5 0 6 0; #X connect 6 0 1 0; -#X restore 187 94 pd digitalIns; +#X restore 150 94 pd digitalIns; +#X obj 361 77 route digital version firmware; +#X msg 479 136 240 \, 121 \, 247; +#X obj 420 116 bang; +#X obj 479 115 bang; #X obj 24 51 route pwm analog analogIns digitalIns pinMode info; -#X obj 412 91 route digital version firmware; -#X msg 530 132 240 \, 121 \, 247; -#X obj 471 112 bang; -#X obj 530 111 bang; -#X connect 0 0 9 0; +#N canvas 624 420 451 466 sysex 0; +#X obj 62 424 outlet; +#X obj 28 22 inlet; +#X obj 28 145 list split 1; +#X obj 62 321 list prepend; +#X obj 62 177 route bang; +#X text 68 22 sysex; +#X obj 250 22 inlet; +#X text 286 21 string; +#X obj 250 155 trigger anything bang; +#X text 398 176 0x71; +#X msg 373 177 113; +#N canvas 366 192 467 461 split 0; +#X text 87 12 Firmata sends 8-bit chars as two 7-bit bytes; +#X obj 32 12 inlet; +#X obj 50 422 outlet; +#X obj 168 173 list; +#X obj 50 361 mapping/tolist; +#X obj 189 112 route bang; +#X obj 189 137 bang; +#X obj 32 311 trigger bang bang; +#X obj 32 54 trigger bang anything; +#X obj 155 89 list split 1; +#X obj 110 208 trigger bang anything anything; +#X text 256 191 LSB; +#X obj 226 298 % 128; +#X text 267 297 only 7-bits of data allowed; +#X text 204 190 MSB; +#X obj 198 234 >> 7; +#X text 235 137 bang resets once finished; +#X connect 1 0 8 0; +#X connect 3 0 9 0; +#X connect 4 0 2 0; +#X connect 5 0 6 0; +#X connect 5 1 3 1; +#X connect 6 0 3 1; +#X connect 7 0 4 0; +#X connect 7 1 4 1; +#X connect 8 0 7 0; +#X connect 8 1 9 0; +#X connect 9 0 10 0; +#X connect 9 1 5 0; +#X connect 10 0 3 0; +#X connect 10 1 15 0; +#X connect 10 2 12 0; +#X connect 12 0 4 0; +#X connect 15 0 12 0; +#X restore 119 212 pd split into 7-bit bytes; +#X obj 62 344 list prepend 240; +#X text 168 345 0xF0 start_sysex; +#X text 167 366 0xF7 end_sysex; +#X obj 62 366 list append 247; +#X obj 28 66 trigger anything anything; +#X msg 175 87 \$1; +#X connect 1 0 16 0; +#X connect 2 1 4 0; +#X connect 3 0 12 0; +#X connect 4 0 3 0; +#X connect 4 1 11 0; +#X connect 6 0 8 0; +#X connect 8 0 11 0; +#X connect 8 1 10 0; +#X connect 10 0 3 1; +#X connect 11 0 3 0; +#X connect 12 0 15 0; +#X connect 15 0 0 0; +#X connect 16 0 2 0; +#X connect 16 1 17 0; +#X connect 17 0 3 1; +#X restore 572 136 pd sysex; +#X obj 572 114 route sysex string; +#X connect 0 0 13 0; #X connect 2 0 1 0; #X connect 3 0 1 0; #X connect 4 0 1 0; @@ -155,20 +226,24 @@ #X connect 6 0 1 0; #X connect 7 0 1 0; #X connect 8 0 1 0; -#X connect 9 0 4 0; -#X connect 9 1 4 0; -#X connect 9 2 7 0; -#X connect 9 3 8 0; -#X connect 9 4 3 0; -#X connect 9 5 5 0; -#X connect 9 6 10 0; -#X connect 10 0 2 0; -#X connect 10 1 12 0; -#X connect 10 2 13 0; -#X connect 10 3 1 0; -#X connect 11 0 1 0; -#X connect 12 0 6 0; -#X connect 13 0 11 0; +#X connect 9 0 2 0; +#X connect 9 1 11 0; +#X connect 9 2 12 0; +#X connect 9 3 15 0; +#X connect 10 0 1 0; +#X connect 11 0 6 0; +#X connect 12 0 10 0; +#X connect 13 0 4 0; +#X connect 13 1 4 0; +#X connect 13 2 7 0; +#X connect 13 3 8 0; +#X connect 13 4 3 0; +#X connect 13 5 5 0; +#X connect 13 6 9 0; +#X connect 14 0 1 0; +#X connect 15 0 14 0; +#X connect 15 1 14 1; +#X connect 15 2 1 0; #X restore 61 52 pd command processing; #X obj 319 19 inlet; #X text 306 1 raw input; @@ -333,7 +408,7 @@ #X restore 372 170 pd analog messages; #X obj 85 13 inlet; #X msg 40 174 version \$2 \$1; -#N canvas 518 166 492 456 sysex 0; +#N canvas 921 447 492 456 sysex 0; #X obj 77 20 inlet; #X obj 77 407 outlet; #N canvas 1036 237 450 300 firmware 0; -- cgit v1.2.1