aboutsummaryrefslogtreecommitdiff
path: root/arduino.pd
diff options
context:
space:
mode:
authorHans-Christoph Steiner <eighthave@users.sourceforge.net>2008-04-08 22:01:33 +0000
committerHans-Christoph Steiner <eighthave@users.sourceforge.net>2008-04-08 22:01:33 +0000
commitca47d23b1b5701c29cd1682ceefe986875ed07bd (patch)
tree3a9bd34f0dede00181bf593eaca0cad78ad79dbc /arduino.pd
parent907d163a34d4da6be8d38e80bbb4a54f287c2555 (diff)
Implemented firmware reporting and sysex, sysex isn't fully tested.
svn path=/trunk/externals/hardware/arduino/; revision=9685
Diffstat (limited to 'arduino.pd')
-rw-r--r--arduino.pd281
1 files changed, 212 insertions, 69 deletions
diff --git a/arduino.pd b/arduino.pd
index a092535..0b016b6 100644
--- a/arduino.pd
+++ b/arduino.pd
@@ -1,10 +1,10 @@
-#N canvas 365 27 644 371 10;
+#N canvas 195 408 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 350 22 589 344 command 0;
+#N canvas 719 22 683 345 command 0;
#X obj 24 7 inlet;
#X obj 281 289 outlet;
#N canvas 729 244 503 311 digital-out 0;
@@ -99,9 +99,7 @@
#X connect 9 0 6 1;
#X restore 24 94 pd pwm;
#X msg 359 93 info;
-#X obj 412 91 route digital version;
-#X obj 24 51 route pwm analog analogIns digitalIns pinMode info;
-#X msg 473 118 249;
+#X msg 471 132 249;
#N canvas 0 22 462 312 analogIns 0;
#X obj 64 7 inlet;
#X obj 69 263 outlet;
@@ -144,24 +142,33 @@
#X connect 5 0 6 0;
#X connect 6 0 1 0;
#X restore 187 94 pd digitalIns;
-#X connect 0 0 7 0;
+#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;
#X connect 2 0 1 0;
#X connect 3 0 1 0;
#X connect 4 0 1 0;
#X connect 5 0 1 0;
-#X connect 6 0 2 0;
-#X connect 6 1 8 0;
-#X connect 6 2 1 0;
-#X connect 7 0 4 0;
-#X connect 7 1 4 0;
-#X connect 7 2 9 0;
-#X connect 7 3 10 0;
-#X connect 7 4 3 0;
-#X connect 7 5 5 0;
-#X connect 7 6 6 0;
+#X connect 6 0 1 0;
+#X connect 7 0 1 0;
#X connect 8 0 1 0;
-#X connect 9 0 1 0;
-#X connect 10 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 restore 61 52 pd command processing;
#X obj 319 19 inlet;
#X text 306 1 raw input;
@@ -186,63 +193,68 @@
#X connect 4 0 3 0;
#X restore 231 113 pd report firmware version;
#X text 335 299 DEBUG/RAW data (this will change);
-#N canvas 225 71 467 421 make 0;
-#X obj 79 6 inlet;
-#X obj 184 337 outlet;
-#X obj 79 72 moses 128;
-#X obj 130 96 trigger float float;
-#N canvas 102 52 653 358 set 0;
+#N canvas 590 536 467 421 make 0;
+#X obj 28 6 inlet;
+#X obj 184 377 outlet;
+#X obj 28 52 moses 128;
+#X obj 130 100 trigger float float;
+#N canvas 459 531 653 358 set 0;
#X obj 26 3 inlet;
#X obj 34 307 outlet;
#X text 85 31 0xF0;
#X obj 26 31 moses 240;
#X text 79 307 length in byte count;
-#X obj 431 254 select 240 247;
-#X text 522 256 SysEx;
-#X msg 291 122 2;
+#X msg 283 122 2;
#X obj 26 60 & 240;
#X obj 26 101 select 144 160 176 192 208 224;
#X text 29 86 0x90 0xA0 0xB0 0xC0 0xD0 0xE0;
#X msg 251 122 2;
-#X text 283 83 0xF4 0xF9;
-#X obj 251 101 select 244 249;
-#X obj 281 199 print [arduino]_WARNING_currently_unsupported;
+#X text 282 83 0xF4 0xF9;
+#X obj 195 242 print [arduino]_WARNING_currently_unsupported;
#X msg 55 122 160;
#X msg 26 122 2;
#X msg 85 122 176;
#X msg 114 122 1;
#X msg 144 122 1;
#X msg 173 122 2;
+#X text 348 69 sysex;
+#X msg 315 122 999999;
+#X text 362 121 <-- sets sysex size limit;
+#X text 62 60 strip channel info;
+#X text 342 83 0xF0;
+#X obj 251 101 select 244 249 240;
#X connect 0 0 3 0;
-#X connect 3 0 8 0;
-#X connect 3 1 13 0;
-#X connect 7 0 1 0;
-#X connect 8 0 9 0;
-#X connect 9 0 16 0;
-#X connect 9 1 15 0;
-#X connect 9 2 17 0;
-#X connect 9 3 18 0;
-#X connect 9 4 19 0;
-#X connect 9 5 20 0;
-#X connect 11 0 1 0;
-#X connect 13 0 11 0;
-#X connect 13 1 7 0;
-#X connect 15 0 14 0;
+#X connect 3 0 6 0;
+#X connect 3 1 23 0;
+#X connect 5 0 1 0;
+#X connect 6 0 7 0;
+#X connect 7 0 13 0;
+#X connect 7 1 12 0;
+#X connect 7 2 14 0;
+#X connect 7 3 15 0;
+#X connect 7 4 16 0;
+#X connect 7 5 17 0;
+#X connect 9 0 1 0;
+#X connect 12 0 11 0;
+#X connect 13 0 1 0;
+#X connect 14 0 11 0;
+#X connect 15 0 1 0;
#X connect 16 0 1 0;
-#X connect 17 0 14 0;
-#X connect 18 0 1 0;
+#X connect 17 0 1 0;
#X connect 19 0 1 0;
-#X connect 20 0 1 0;
-#X restore 241 123 pd set message length;
-#X obj 184 258 mapping/tolist;
-#X obj 79 210 select 0;
-#X obj 79 188 float;
-#X obj 117 188 - 1;
-#X obj 79 128 trigger bang float;
-#X text 140 72 only process command bytes;
-#N canvas 0 22 482 332 convert 0;
-#X obj 142 218 outlet;
-#X obj 257 218 print UNKNOWN_INPUT_COMMAND;
+#X connect 23 0 9 0;
+#X connect 23 1 5 0;
+#X connect 23 2 19 0;
+#X restore 241 127 pd set message length;
+#X obj 184 298 mapping/tolist;
+#X obj 79 250 select 0;
+#X obj 79 228 float;
+#X obj 117 228 - 1;
+#X obj 79 178 trigger bang float;
+#X text 89 52 only process command bytes;
+#N canvas 539 459 521 367 convert 0;
+#X obj 142 278 outlet;
+#X obj 34 321 print UNKNOWN_INPUT_COMMAND;
#N canvas 123 202 630 307 digital 0;
#X obj 163 16 inlet;
#X obj 252 255 outlet;
@@ -296,7 +308,7 @@
#X connect 17 0 4 0;
#X connect 18 0 4 0;
#X connect 19 0 4 0;
-#X restore 143 114 pd digital messages;
+#X restore 143 174 pd digital messages;
#N canvas 134 58 335 267 analog 0;
#X obj 65 6 inlet;
#X obj 65 203 outlet;
@@ -318,22 +330,150 @@
#X connect 6 0 3 1;
#X connect 8 0 5 1;
#X connect 9 0 3 0;
-#X restore 286 113 pd analog messages;
+#X restore 372 170 pd analog messages;
#X obj 85 13 inlet;
-#X msg 40 114 version \$2 \$1;
-#X obj 85 65 route 249 144;
-#X text 114 50 0xF9 0x90;
+#X msg 40 174 version \$2 \$1;
+#N canvas 518 166 492 456 sysex 0;
+#X obj 77 20 inlet;
+#X obj 77 407 outlet;
+#N canvas 1036 237 450 300 firmware 0;
+#X obj 91 6 inlet;
+#X obj 91 272 outlet;
+#X obj 91 170 list prepend;
+#X obj 91 206 list prepend firmware;
+#X obj 91 239 list trim;
+#X obj 160 116 moocow/string2any 32 -1;
+#X obj 91 39 list split 2;
+#N canvas 843 250 610 545 reassemble 0;
+#X text 91 24 Firmata sends 8-bit chars as two 7-bit bytes;
+#X obj 36 24 inlet;
+#X obj 54 514 outlet;
+#X obj 159 131 list split 2;
+#X obj 196 206 list;
+#X obj 109 256 trigger bang anything;
+#X obj 232 280 unpack float float;
+#X obj 232 340 +;
+#X obj 54 403 mapping/tolist;
+#X obj 193 154 route bang;
+#X obj 337 303 << 7;
+#X obj 193 179 bang;
+#X obj 36 353 trigger bang bang;
+#X obj 36 106 trigger bang anything;
+#X text 249 179 reset the list if end of list or there is a single
+byte left over;
+#X connect 1 0 13 0;
+#X connect 3 0 5 0;
+#X connect 3 1 9 0;
+#X connect 3 2 11 0;
+#X connect 4 0 3 0;
+#X connect 5 0 4 0;
+#X connect 5 1 6 0;
+#X connect 6 0 7 0;
+#X connect 6 1 10 0;
+#X connect 7 0 8 0;
+#X connect 8 0 2 0;
+#X connect 9 0 11 0;
+#X connect 9 1 4 1;
+#X connect 10 0 7 1;
+#X connect 11 0 4 1;
+#X connect 12 0 8 0;
+#X connect 12 1 8 1;
+#X connect 13 0 12 0;
+#X connect 13 1 3 0;
+#X restore 160 79 pd reassemble chars;
+#X connect 0 0 6 0;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 4 0 1 0;
+#X connect 5 0 2 1;
+#X connect 6 0 2 0;
+#X connect 6 1 7 0;
+#X connect 6 2 7 0;
+#X connect 7 0 5 0;
+#X restore 77 229 pd firmware;
+#N canvas 843 250 610 545 assemble 0;
+#X text 91 24 Firmata sends 8-bit chars as two 7-bit bytes;
+#X obj 36 24 inlet;
+#X obj 54 514 outlet;
+#X obj 159 131 list split 2;
+#X obj 196 206 list;
+#X obj 109 256 trigger bang anything;
+#X obj 232 280 unpack float float;
+#X obj 232 340 +;
+#X obj 54 403 mapping/tolist;
+#X obj 193 154 route bang;
+#X obj 337 303 << 7;
+#X obj 193 179 bang;
+#X obj 36 353 trigger bang bang;
+#X obj 36 106 trigger bang anything;
+#X text 249 179 reset the list if end of list or there is a single
+byte left over;
+#X connect 1 0 13 0;
+#X connect 3 0 5 0;
+#X connect 3 1 9 0;
+#X connect 3 2 11 0;
+#X connect 4 0 3 0;
+#X connect 5 0 4 0;
+#X connect 5 1 6 0;
+#X connect 6 0 7 0;
+#X connect 6 1 10 0;
+#X connect 7 0 8 0;
+#X connect 8 0 2 0;
+#X connect 9 0 11 0;
+#X connect 9 1 4 1;
+#X connect 10 0 7 1;
+#X connect 11 0 4 1;
+#X connect 12 0 8 0;
+#X connect 12 1 8 1;
+#X connect 13 0 12 0;
+#X connect 13 1 3 0;
+#X restore 181 281 pd assemble 7-bit into 14-bit values;
+#X obj 181 330 list prepend;
+#X obj 181 351 list trim;
+#X obj 180 157 trigger anything anything;
+#X msg 327 181 \$1;
+#X obj 181 183 list split 1;
+#X obj 327 205 select 112 113;
+#X text 358 188 0x70 0x71;
+#X msg 356 230 string;
+#X msg 273 230 servo_config;
+#X text 108 80 0x79;
+#X obj 77 98 route 121;
+#X connect 0 0 14 0;
+#X connect 2 0 1 0;
+#X connect 3 0 4 0;
+#X connect 4 0 5 0;
+#X connect 5 0 1 0;
+#X connect 6 0 8 0;
+#X connect 6 1 7 0;
+#X connect 7 0 9 0;
+#X connect 8 1 3 0;
+#X connect 9 0 12 0;
+#X connect 9 1 11 0;
+#X connect 9 2 4 1;
+#X connect 11 0 4 1;
+#X connect 12 0 4 1;
+#X connect 14 0 2 0;
+#X connect 14 1 6 0;
+#X restore 279 172 pd sysex;
+#X obj 85 95 route 249 144 240;
+#X text 109 80 0xF9 0x90 0xF0;
#X connect 2 0 0 0;
#X connect 3 0 0 0;
-#X connect 4 0 6 0;
+#X connect 4 0 7 0;
#X connect 5 0 0 0;
-#X connect 6 0 5 0;
-#X connect 6 1 2 0;
-#X connect 6 2 3 0;
-#X restore 184 294 pd convert to symbolic commands;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X connect 7 1 2 0;
+#X connect 7 2 6 0;
+#X connect 7 3 3 0;
+#X restore 184 334 pd convert to symbolic commands;
+#X text 140 78 end of sysex;
+#X obj 79 79 route 247;
+#X obj 79 100 bang;
#X connect 0 0 2 0;
#X connect 2 0 9 0;
-#X connect 2 1 3 0;
+#X connect 2 1 13 0;
#X connect 3 0 9 0;
#X connect 3 1 4 0;
#X connect 4 0 7 1;
@@ -345,6 +485,9 @@
#X connect 9 0 7 0;
#X connect 9 1 5 0;
#X connect 11 0 1 0;
+#X connect 13 0 14 0;
+#X connect 13 1 3 0;
+#X connect 14 0 5 1;
#X restore 62 199 pd make lists;
#N canvas 0 22 525 269 check 0;
#X obj 47 62 inlet;
@@ -363,7 +506,7 @@ with;
#X connect 4 1 3 0;
#X restore 92 242 pd check version;
#X text 10 337 (C) Copyright 2006 Free Software Foundation;
-#X obj 61 136 flatspace/comport \$1 57600;
+#X obj 61 136 flatspace/comport \$1 115200;
#X connect 2 0 5 0;
#X connect 5 0 16 0;
#X connect 6 0 16 0;