Update of /cvsroot/pure-data/externals/hardware/arduino In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28609
Modified Files: arduino-help.pd arduino-test.pd arduino.pd Log Message: redesigned the input protocol to be a 3-byte sequence, the first byte is the data type, the second two are the data. The second two bytes are then combined to give one 14-bit value.
For example 240 0 1 (from serial) == [version 1( (Pd message)
arduino-test.pd was updated for this, the help patch was not, but should be largely correct. I only tightened up the layout of the help patch.
Index: arduino.pd =================================================================== RCS file: /cvsroot/pure-data/externals/hardware/arduino/arduino.pd,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** arduino.pd 4 Sep 2006 15:42:01 -0000 1.14 --- arduino.pd 15 Sep 2006 05:22:51 -0000 1.15 *************** *** 1,62 **** ! #N canvas 404 56 608 521 10; #X obj 462 15 import flatspace; ! #X text 414 487 released under the GNU GPL; ! #X text 9 487 (C) Copyright 2006 Hans-Christoph Steiner hans@at.or.at ; - #N canvas 562 456 470 320 alternate 0; - #X obj 87 8 inlet; - #X obj 151 244 outlet; - #X obj 319 247 outlet; - #X obj 159 197 spigot; - #X obj 319 191 spigot; - #X obj 158 57 trigger anything bang; - #X obj 196 152 abs; - #X obj 356 147 abs; - #X msg 295 77 1; - #X obj 196 173 float; - #X obj 355 168 float; - #X obj 86 34 route reset; - #X obj 356 128 -; - #X obj 196 133 -; - #X obj 15 35 loadbang; - #X obj 86 54 bang; - #X msg 73 82 1; - #X msg 103 82 0; - #X connect 0 0 11 0; - #X connect 3 0 1 0; - #X connect 4 0 2 0; - #X connect 5 0 3 0; - #X connect 5 0 4 0; - #X connect 5 1 8 0; - #X connect 6 0 9 0; - #X connect 7 0 10 0; - #X connect 8 0 12 0; - #X connect 8 0 13 0; - #X connect 9 0 3 1; - #X connect 9 0 13 1; - #X connect 10 0 4 1; - #X connect 10 0 12 1; - #X connect 11 0 15 0; - #X connect 11 1 5 0; - #X connect 12 0 7 0; - #X connect 13 0 6 0; - #X connect 14 0 17 0; - #X connect 14 0 16 0; - #X connect 15 0 17 0; - #X connect 15 0 16 0; - #X connect 16 0 13 1; - #X connect 17 0 12 1; - #X restore 76 191 pd alternate; - #X msg 11 160 reset; - #X obj 120 233 +; - #X obj 120 254 trigger bang float; - #X obj 126 405 pack symbol float; - #X msg 124 288 0; - #X obj 11 138 select 255; - #X obj 76 210 * 128; #X obj 11 21 inlet; ! #X obj 126 455 outlet; #X obj 494 241 outlet; ! #N canvas 275 202 542 337 command 0; #X obj 46 8 inlet; #X obj 148 269 outlet; --- 1,11 ---- ! #N canvas 628 43 617 333 10; #X obj 462 15 import flatspace; ! #X text 415 287 released under the GNU GPL; ! #X text 10 287 (C) Copyright 2006 Hans-Christoph Steiner hans@at.or.at ; #X obj 11 21 inlet; ! #X obj 11 196 outlet; #X obj 494 241 outlet; ! #N canvas 120 132 612 337 command 0; #X obj 46 8 inlet; #X obj 148 269 outlet; *************** *** 84,88 **** #X connect 7 0 4 0; #X connect 8 0 1 0; ! #X restore 403 93 pd digital-out; #N canvas 90 168 520 327 outputMode 0; #X obj 60 11 inlet; --- 33,37 ---- #X connect 7 0 4 0; #X connect 8 0 1 0; ! #X restore 449 93 pd digital-out; #N canvas 90 168 520 327 outputMode 0; #X obj 60 11 inlet; *************** *** 124,130 **** #X obj 232 164 clip 0 1; #X obj 232 205 int; ! #N canvas 0 0 450 300 list-rev 0; #X obj 92 29 inlet; ! #N canvas 0 0 533 407 drip 0; #X obj 64 206 list split 1; #X obj 64 123 until; --- 73,79 ---- #X obj 232 164 clip 0 1; #X obj 232 205 int; ! #N canvas 0 22 450 300 list-rev 0; #X obj 92 29 inlet; ! #N canvas 0 22 533 407 drip 0; #X obj 64 206 list split 1; #X obj 64 123 until; *************** *** 191,197 **** #X connect 14 1 1 0; #X restore 30 94 pd pwm; ! #X obj 46 52 route pwm analogIns digitalIns outputMode info; ! #X msg 355 94 info; ! #X connect 0 0 10 0; #X connect 2 0 7 0; #X connect 3 0 4 0; --- 140,148 ---- #X connect 14 1 1 0; #X restore 30 94 pd pwm; ! #X msg 340 94 info; ! #X obj 46 52 route pwm analogIns digitalIns outputMode info version ! ; ! #X msg 390 93 240; ! #X connect 0 0 11 0; #X connect 2 0 7 0; #X connect 3 0 4 0; *************** *** 202,251 **** #X connect 8 0 1 0; #X connect 9 0 1 0; ! #X connect 10 0 9 0; ! #X connect 10 1 2 0; ! #X connect 10 2 3 0; ! #X connect 10 3 6 0; ! #X connect 10 4 11 0; ! #X connect 10 5 5 0; ! #X connect 11 0 1 0; #X restore 11 52 pd command processing; ! #X obj 76 162 moses 128; ! #X msg 27 376 symbol digital; ! #X obj 142 375 makefilename analog%c; ! #X obj 99 309 float; ! #X obj 138 309 + 1; ! #X obj 126 430 list trim; ! #X obj 99 331 select 0; ! #X text 287 285 DEBUG/RAW data (this will change); ! #X obj 142 353 + 47; #X obj 379 19 inlet; #X text 354 0 raw input; #X text 10 -1 processed input; #X obj 11 96 comport $1 19200; ! #X connect 3 0 10 0; ! #X connect 3 1 5 1; #X connect 4 0 3 0; ! #X connect 4 0 8 0; ! #X connect 5 0 6 0; ! #X connect 6 0 18 0; ! #X connect 6 1 7 1; ! #X connect 7 0 20 0; ! #X connect 8 0 18 1; ! #X connect 9 0 4 0; ! #X connect 9 1 15 0; ! #X connect 10 0 5 0; ! #X connect 11 0 14 0; ! #X connect 14 0 27 0; ! #X connect 15 0 3 0; ! #X connect 16 0 7 0; ! #X connect 17 0 7 0; ! #X connect 18 0 19 0; ! #X connect 18 0 21 0; ! #X connect 19 0 18 1; ! #X connect 20 0 12 0; ! #X connect 21 0 16 0; ! #X connect 21 1 23 0; ! #X connect 23 0 17 0; ! #X connect 24 0 27 0; ! #X connect 27 0 9 0; ! #X connect 27 0 13 0; --- 153,265 ---- #X connect 8 0 1 0; #X connect 9 0 1 0; ! #X connect 10 0 1 0; ! #X connect 11 0 9 0; ! #X connect 11 1 2 0; ! #X connect 11 2 3 0; ! #X connect 11 3 6 0; ! #X connect 11 4 10 0; ! #X connect 11 5 12 0; ! #X connect 11 6 5 0; ! #X connect 12 0 1 0; #X restore 11 52 pd command processing; ! #X text 257 242 DEBUG/RAW data (this will change); #X obj 379 19 inlet; #X text 354 0 raw input; #X text 10 -1 processed input; #X obj 11 96 comport $1 19200; ! #N canvas 182 25 380 443 make 0; ! #X obj 147 8 inlet; ! #X obj 71 334 outlet; ! #X obj 147 37 moses 128; ! #X obj 27 198 float; ! #N canvas 382 81 506 356 alternate 0; ! #X obj 34 280 outlet; ! #X obj 209 277 outlet; ! #X obj 34 210 spigot; ! #X obj 209 204 spigot; ! #X obj 33 87 trigger anything bang; ! #X msg 175 107 1; ! #X obj 71 186 float; ! #X obj 245 181 float; ! #X obj 357 41 loadbang; ! #X obj 342 74 bang; ! #X obj 246 158 !=; ! #X obj 71 163 !=; ! #X obj 342 7 inlet; ! #X text 384 6 reset; ! #X obj 33 12 inlet; ! #X msg 329 102 1; ! #X msg 359 102 0; ! #X connect 2 0 0 0; ! #X connect 3 0 1 0; ! #X connect 4 0 2 0; #X connect 4 0 3 0; ! #X connect 4 1 5 0; ! #X connect 5 0 10 0; ! #X connect 5 0 11 0; ! #X connect 6 0 2 1; ! #X connect 6 0 11 1; ! #X connect 7 0 3 1; ! #X connect 7 0 10 1; ! #X connect 8 0 9 0; ! #X connect 9 0 16 0; ! #X connect 9 0 15 0; ! #X connect 10 0 7 0; ! #X connect 11 0 6 0; ! #X connect 12 0 9 0; ! #X connect 14 0 4 0; ! #X connect 15 0 11 1; ! #X connect 16 0 10 1; ! #X restore 147 130 pd alternate; ! #X obj 27 173 trigger bang float; ! #X obj 226 111 bang; ! #N canvas 0 22 576 352 convert 0; ! #X obj 98 22 inlet; ! #X obj 163 314 outlet; ! #X obj 365 204 print UNKNOWN_INPUT_COMMAND; ! #X obj 98 68 select 151 240; ! #X obj 191 89 moses 161; ! #X obj 250 113 moses 167; ! #X obj 188 195 makefilename analog%c; ! #X obj 188 174 - 113; ! #X msg 117 131 symbol version; ! #X msg 8 131 symbol digital; ! #X connect 0 0 3 0; ! #X connect 3 0 9 0; ! #X connect 3 1 8 0; ! #X connect 3 2 4 0; ! #X connect 4 0 2 0; ! #X connect 4 1 5 0; ! #X connect 5 0 7 0; ! #X connect 5 1 2 0; ! #X connect 6 0 1 0; ! #X connect 7 0 6 0; ! #X connect 8 0 1 0; ! #X connect 9 0 1 0; ! #X restore 27 219 pd convert commands; ! #X obj 70 296 list trim; ! #X obj 70 273 pack symbol float; ! #X obj 184 219 +; ! #X obj 200 197 * 128; ! #X connect 0 0 2 0; ! #X connect 2 0 4 0; ! #X connect 2 1 3 1; ! #X connect 2 1 6 0; ! #X connect 3 0 7 0; ! #X connect 4 0 5 0; ! #X connect 4 1 11 0; ! #X connect 5 0 3 0; ! #X connect 5 1 10 0; ! #X connect 6 0 4 1; ! #X connect 7 0 9 0; ! #X connect 8 0 1 0; ! #X connect 9 0 8 0; ! #X connect 10 0 9 1; ! #X connect 11 0 10 1; ! #X restore 10 165 pd make lists; ! #X connect 3 0 6 0; ! #X connect 6 0 11 0; ! #X connect 8 0 11 0; ! #X connect 11 0 5 0; ! #X connect 11 0 12 0; ! #X connect 12 0 4 0;
Index: arduino-help.pd =================================================================== RCS file: /cvsroot/pure-data/externals/hardware/arduino/arduino-help.pd,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** arduino-help.pd 4 Sep 2006 15:42:01 -0000 1.14 --- arduino-help.pd 15 Sep 2006 05:22:51 -0000 1.15 *************** *** 1,4 **** ! #N canvas 654 0 691 634 10; ! #N canvas 233 472 450 300 INSTALL-NOTES 0; #X text 39 201 [comport] , from pd-cvs/externals/iem/comport; #X text 39 185 [arduino] , from pd-cvs/externals/hardware/arduino --- 1,4 ---- ! #N canvas 62 23 698 571 10; ! #N canvas 233 472 454 304 INSTALL-NOTES 0; #X text 39 201 [comport] , from pd-cvs/externals/iem/comport; #X text 39 185 [arduino] , from pd-cvs/externals/hardware/arduino *************** *** 16,31 **** #X text 22 257 5 If you still have troubles , mail to the pd list !; ! #X restore 25 136 pd INSTALL-NOTES; ! #X text 150 137 <- read this first !; ! #X obj 402 134 arduino 5; ! #X obj 26 244 hradio 15 1 0 8 empty empty empty 0 -6 0 8 -260818 -1 ! -1 5; ! #X msg 26 262 open $1; ! #X floatatom 109 261 5 0 0 0 - - -; ! #X obj 402 113 r $0-arduino; ! #X msg 37 283 close; ! #X msg 47 304 info; ! #X text 21 221 select/close the serial port:; ! #X obj 26 326 s $0-arduino; #N canvas 728 223 550 248 DIGITAL-OUTPUT 0; #X text 21 78 I/O the individual pins:; --- 16,31 ---- #X text 22 257 5 If you still have troubles , mail to the pd list !; ! #X restore 25 92 pd INSTALL-NOTES; ! #X text 150 93 <- read this first !; ! #X obj 402 90 arduino 5; ! #X obj 26 180 hradio 15 1 0 8 empty empty empty 0 -6 0 8 -260818 -1 ! -1 0; ! #X msg 26 198 open $1; ! #X floatatom 109 197 5 0 0 0 - - -; ! #X obj 402 69 r $0-arduino; ! #X msg 37 219 close; ! #X msg 47 240 info; ! #X text 21 157 select/close the serial port:; ! #X obj 26 262 s $0-arduino; #N canvas 728 223 550 248 DIGITAL-OUTPUT 0; #X text 21 78 I/O the individual pins:; *************** *** 47,51 **** #X obj 264 118 tgl 15 0 empty empty 13 3 -6 0 10 -260818 -1 -1 0 1 ; ! #X obj 284 98 tgl 20 0 empty empty empty 0 -6 0 8 -258699 -1 -1 1 1 ; #X obj 24 118 tgl 15 0 empty empty 0 3 -6 0 10 -260818 -1 -1 0 1; --- 47,51 ---- #X obj 264 118 tgl 15 0 empty empty 13 3 -6 0 10 -260818 -1 -1 0 1 ; ! #X obj 284 98 tgl 20 0 empty empty empty 0 -6 0 8 -258699 -1 -1 0 1 ; #X obj 24 118 tgl 15 0 empty empty 0 3 -6 0 10 -260818 -1 -1 0 1; *************** *** 269,273 **** #X connect 16 0 17 0; #X connect 16 0 18 0; ! #X restore 171 502 pd DIGITAL-OUTPUT; #N canvas 494 94 550 252 DIGITAL-INPUT 0; #X obj 46 128 tgl 15 0 empty empty 1 3 -6 0 10 -260818 -1 -1 0 2; --- 269,273 ---- #X connect 16 0 17 0; #X connect 16 0 18 0; ! #X restore 171 438 pd DIGITAL-OUTPUT; #N canvas 494 94 550 252 DIGITAL-INPUT 0; #X obj 46 128 tgl 15 0 empty empty 1 3 -6 0 10 -260818 -1 -1 0 2; *************** *** 294,298 **** #X obj 267 128 tgl 15 0 empty empty 13 3 -6 0 10 -260818 -1 -1 0 8192 ; ! #X obj 28 128 tgl 15 0 empty empty 0 3 -6 0 10 -260818 -1 -1 1 1; #N canvas 64 160 778 300 send-to-arduino................. 0; #X obj 35 55 route digital; --- 294,298 ---- #X obj 267 128 tgl 15 0 empty empty 13 3 -6 0 10 -260818 -1 -1 0 8192 ; ! #X obj 28 128 tgl 15 0 empty empty 0 3 -6 0 10 -260818 -1 -1 0 1; #N canvas 64 160 778 300 send-to-arduino................. 0; #X obj 35 55 route digital; *************** *** 380,407 **** #X connect 14 13 12 0; #X connect 15 0 14 0; ! #X restore 178 478 pd DIGITAL-INPUT; ! #X obj 402 155 s $0-arduino-out; ! #X text 525 303 (0=input , 1=output); ! #X obj 289 276 tgl 15 0 empty empty 1 3 -6 0 10 -260818 -1 -1 1 1; ! #X obj 307 276 tgl 15 0 empty empty 2 3 -6 0 10 -260818 -1 -1 1 1; ! #X obj 325 276 tgl 15 0 empty empty 3 3 -6 0 10 -260818 -1 -1 1 1; ! #X obj 343 276 tgl 15 0 empty empty 4 3 -6 0 10 -260818 -1 -1 1 1; ! #X obj 361 276 tgl 15 0 empty empty 5 3 -6 0 10 -260818 -1 -1 1 1; ! #X obj 379 276 tgl 15 0 empty empty 6 3 -6 0 10 -260818 -1 -1 1 1; ! #X obj 397 276 tgl 15 0 empty empty 7 3 -6 0 10 -260818 -1 -1 1 1; ! #X obj 415 276 tgl 15 0 empty empty 8 3 -6 0 10 -260818 -1 -1 1 1; ! #X obj 433 276 tgl 15 0 empty empty 9 3 -6 0 10 -260818 -1 -1 1 1; ! #X obj 451 276 tgl 15 0 empty empty 10 3 -6 0 10 -260818 -1 -1 1 1 ; ! #X obj 469 276 tgl 15 0 empty empty 11 3 -6 0 10 -260818 -1 -1 1 1 ; ! #X obj 487 276 tgl 15 0 empty empty 12 3 -6 0 10 -260818 -1 -1 1 1 ; ! #X obj 505 276 tgl 15 0 empty empty 13 3 -6 0 10 -260818 -1 -1 1 1 ; ! #X obj 531 256 tgl 20 0 empty empty empty 0 -6 0 8 -258699 -1 -1 1 1; ! #X text 530 241 all; ! #X obj 271 276 tgl 15 0 empty empty 0 3 -6 0 10 -260818 -1 -1 1 1; #N canvas 554 328 750 300 send-to-arduino---------------- 0; #X obj 49 54 inlet; --- 380,407 ---- #X connect 14 13 12 0; #X connect 15 0 14 0; ! #X restore 178 414 pd DIGITAL-INPUT; ! #X obj 402 111 s $0-arduino-out; ! #X text 525 239 (0=input , 1=output); ! #X obj 289 212 tgl 15 0 empty empty 1 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 307 212 tgl 15 0 empty empty 2 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 325 212 tgl 15 0 empty empty 3 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 343 212 tgl 15 0 empty empty 4 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 361 212 tgl 15 0 empty empty 5 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 379 212 tgl 15 0 empty empty 6 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 397 212 tgl 15 0 empty empty 7 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 415 212 tgl 15 0 empty empty 8 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 433 212 tgl 15 0 empty empty 9 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 451 212 tgl 15 0 empty empty 10 3 -6 0 10 -260818 -1 -1 0 1 ; ! #X obj 469 212 tgl 15 0 empty empty 11 3 -6 0 10 -260818 -1 -1 0 1 ; ! #X obj 487 212 tgl 15 0 empty empty 12 3 -6 0 10 -260818 -1 -1 0 1 ; ! #X obj 505 212 tgl 15 0 empty empty 13 3 -6 0 10 -260818 -1 -1 0 1 ; ! #X obj 531 192 tgl 20 0 empty empty empty 0 -6 0 8 -258699 -1 -1 0 1; ! #X text 530 177 all; ! #X obj 271 212 tgl 15 0 empty empty 0 3 -6 0 10 -260818 -1 -1 0 1; #N canvas 554 328 750 300 send-to-arduino---------------- 0; #X obj 49 54 inlet; *************** *** 462,470 **** #X connect 26 0 27 0; #X connect 27 0 28 0; ! #X restore 271 303 pd send-to-arduino----------------; ! #X obj 271 356 s $0-arduino; ! #X msg 294 329 outputMode 13 1; ! #X text 412 329 set pin 13 to output mode; ! #X text 270 223 Set input/output mode of the pins for digital IO:; #N canvas 374 455 492 344 ANALOG-INPUT 0; #X obj 29 59 r $0-arduino-out; --- 462,470 ---- #X connect 26 0 27 0; #X connect 27 0 28 0; ! #X restore 271 239 pd send-to-arduino----------------; ! #X obj 271 292 s $0-arduino; ! #X msg 294 265 outputMode 13 1; ! #X text 412 265 set pin 13 to output mode; ! #X text 270 159 Set input/output mode of the pins for digital IO:; #N canvas 374 455 492 344 ANALOG-INPUT 0; #X obj 29 59 r $0-arduino-out; *************** *** 533,537 **** #X connect 10 4 8 0; #X connect 10 5 9 0; ! #X restore 185 526 pd ANALOG-INPUT; #N canvas 729 582 542 358 ANALOG-OUTPUT-PWM 0; #X text 16 17 Analog Output , PWM (Pulse Width Modulation); --- 533,537 ---- #X connect 10 4 8 0; #X connect 10 5 9 0; ! #X restore 185 462 pd ANALOG-INPUT; #N canvas 729 582 542 358 ANALOG-OUTPUT-PWM 0; #X text 16 17 Analog Output , PWM (Pulse Width Modulation); *************** *** 542,555 **** #X msg 21 189 pwm 9 $1; #X obj 24 168 hsl 150 17 0 1 0 0 empty empty PWM_control_(0-1) -2 -6 ! 1 10 -260818 -1 -1 6800 1; #X msg 31 234 pwm 9 off; #X obj 21 258 s $0-arduino; #X text 29 215 disable PWM:; #X obj 192 168 hsl 150 17 0 1 0 0 empty empty PWM_control_(0-1) -2 ! -6 1 10 -260818 -1 -1 8200 1; #X obj 189 258 s $0-arduino; #X text 197 215 disable PWM:; #X obj 354 168 hsl 150 17 0 1 0 0 empty empty PWM_control_(0-1) -2 ! -6 1 10 -260818 -1 -1 6400 1; #X obj 351 258 s $0-arduino; #X text 359 215 disable PWM:; --- 542,555 ---- #X msg 21 189 pwm 9 $1; #X obj 24 168 hsl 150 17 0 1 0 0 empty empty PWM_control_(0-1) -2 -6 ! 1 10 -260818 -1 -1 0 1; #X msg 31 234 pwm 9 off; #X obj 21 258 s $0-arduino; #X text 29 215 disable PWM:; #X obj 192 168 hsl 150 17 0 1 0 0 empty empty PWM_control_(0-1) -2 ! -6 1 10 -260818 -1 -1 0 1; #X obj 189 258 s $0-arduino; #X text 197 215 disable PWM:; #X obj 354 168 hsl 150 17 0 1 0 0 empty empty PWM_control_(0-1) -2 ! -6 1 10 -260818 -1 -1 0 1; #X obj 351 258 s $0-arduino; #X text 359 215 disable PWM:; *************** *** 572,587 **** #X connect 19 0 12 0; #X connect 20 0 12 0; ! #X restore 150 551 pd ANALOG-OUTPUT-PWM; ! #X text 25 421 With the Arduino-Board you can do digital and analog input and output , as descriped in the following sub-patches:; ! #X text 301 501 <- example of Digital Output; ! #X text 301 479 <- example of Digital Input; ! #X text 301 527 <- example of Analog Input; ! #X text 301 552 <- example of Analog Output; ! #X text 259 54 Arduino Interface For PD; ! #X text 286 28 ::::_PDUINO_::::; ! #X text 475 595 2006 , released under GNU GPL ; Gerda Strobl , Georg Holzmann; ! #X text 86 305 <- list devices; #X connect 2 0 13 0; #X connect 3 0 4 0; --- 572,587 ---- #X connect 19 0 12 0; #X connect 20 0 12 0; ! #X restore 150 487 pd ANALOG-OUTPUT-PWM; ! #X text 25 357 With the Arduino-Board you can do digital and analog input and output , as descriped in the following sub-patches:; ! #X text 301 437 <- example of Digital Output; ! #X text 301 415 <- example of Digital Input; ! #X text 301 463 <- example of Analog Input; ! #X text 301 488 <- example of Analog Output; ! #X text 259 30 Arduino Interface For PD; ! #X text 286 4 ::::_PDUINO_::::; ! #X text 475 531 2006 , released under GNU GPL ; Gerda Strobl , Georg Holzmann; ! #X text 86 241 <- list devices; #X connect 2 0 13 0; #X connect 3 0 4 0;
Index: arduino-test.pd =================================================================== RCS file: /cvsroot/pure-data/externals/hardware/arduino/arduino-test.pd,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** arduino-test.pd 4 Sep 2006 07:44:29 -0000 1.2 --- arduino-test.pd 15 Sep 2006 05:22:51 -0000 1.3 *************** *** 1,10 **** ! #N canvas 124 74 691 566 10; ! #X msg 166 173 open 3; #N canvas 627 365 360 384 serin 0; ! #X obj 180 61 cnv 15 15 15 empty $0-number-canvas 3 4 8 0 14 -233017 -1 0; #X obj 200 225 s $0-number-canvas; #X obj 60 61 hradio 15 1 1 8 empty empty empty 0 -6 0 8 -225271 -1 ! -1 3; #X obj 60 13 inlet; #X msg 200 202 label $1; --- 1,11 ---- ! #N canvas 219 143 695 547 10; ! #X obj 572 7 import mapping; ! #X msg 166 173 open 1; #N canvas 627 365 360 384 serin 0; ! #X obj 180 61 cnv 15 15 15 empty $0-number-canvas 1 4 8 0 14 -233017 -1 0; #X obj 200 225 s $0-number-canvas; #X obj 60 61 hradio 15 1 1 8 empty empty empty 0 -6 0 8 -225271 -1 ! -1 1; #X obj 60 13 inlet; #X msg 200 202 label $1; *************** *** 36,144 **** #X obj 434 321 tgl 15 0 empty empty changes 0 -6 0 8 -262144 -1 -1 0 1; - #X obj 353 61 hradio 15 1 0 14 empty empty empty 0 -6 0 8 -262131 -1 - -1 0; - #X obj 330 62 tgl 15 0 empty empty empty 0 -6 0 8 -262131 -1 -1 1 1 - ; #X obj 373 321 tgl 15 0 empty empty all 0 -6 0 8 -262144 -1 -1 0 1 ; ! #N canvas 514 440 628 350 decode 0; ! #X obj 241 26 inlet; ! #X obj 545 189 & 1; ! #X obj 511 189 & 2; ! #X obj 477 189 & 4; ! #X obj 545 213 tgl 15 0 empty empty 0 4 25 1 12 -262144 -1 -1 0 1; ! #X obj 511 213 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 ! 2; ! #X obj 477 213 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 ! 4; ! #X obj 433 213 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 ! 8; ! #X obj 389 213 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 ! 16; ! #X obj 314 213 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 ! 64; ! #X obj 277 213 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 ! 128; ! #X obj 195 213 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 ! 512; ! #X obj 151 213 tgl 15 0 empty empty 10 -1 25 1 12 -262144 -1 -1 0 1024 ; ! #X obj 107 213 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 ! 2048; ! #X obj 63 213 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 4096 ; ! #X obj 19 213 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 8192 ; ! #X obj 433 189 & 8; ! #X obj 389 189 & 16; ! #X obj 351 189 & 32; ! #X obj 314 189 & 64; ! #X obj 277 189 & 128; ! #X obj 236 189 & 256; ! #X obj 195 189 & 512; ! #X obj 151 189 & 1024; ! #X obj 107 189 & 2048; ! #X obj 63 189 & 4096; ! #X obj 19 189 & 8192; ! #X obj 261 273 outlet; ! #X floatatom 296 46 5 0 0 0 - - -; ! #X obj 236 213 tgl 15 0 empty empty 8 -1 25 1 12 -262144 -1 -1 0 256 ; ! #X obj 351 213 tgl 15 0 empty empty 5 -1 25 1 12 -262144 -1 -1 0 32 ; ! #X connect 0 0 1 0; ! #X connect 0 0 2 0; ! #X connect 0 0 3 0; ! #X connect 0 0 16 0; ! #X connect 0 0 17 0; ! #X connect 0 0 18 0; ! #X connect 0 0 19 0; ! #X connect 0 0 20 0; ! #X connect 0 0 21 0; ! #X connect 0 0 22 0; ! #X connect 0 0 23 0; ! #X connect 0 0 24 0; ! #X connect 0 0 25 0; ! #X connect 0 0 26 0; ! #X connect 0 0 28 0; ! #X connect 1 0 4 0; ! #X connect 2 0 5 0; ! #X connect 3 0 6 0; ! #X connect 16 0 7 0; ! #X connect 17 0 8 0; ! #X connect 18 0 30 0; ! #X connect 19 0 9 0; ! #X connect 20 0 10 0; ! #X connect 21 0 29 0; ! #X connect 22 0 11 0; ! #X connect 23 0 12 0; ! #X connect 24 0 13 0; ! #X connect 25 0 14 0; ! #X connect 26 0 15 0; #X restore 471 486 pd decode buttons; #X obj 93 89 hsl 150 17 0 1 0 0 empty empty PWM_control_(0-1) -2 -6 1 10 -225271 -1 -1 0 0; ! #X text 461 47 7; ! #X text 355 47 0; ! #X text 502 47 10; ! #X obj 21 355 spigot 0; ! #X obj 64 326 tgl 15 0 empty empty empty 0 -6 0 8 -225271 -1 -1 0 1 ; #X obj 21 377 route analog0 analog1 analog2 analog3 analog4 analog5 ; ! #X obj 435 422 route digital; ! #X obj 521 442 print GARBAGE; #X floatatom 424 488 6 0 0 0 - - -; ! #X text 329 127 how many analogIns to enable:; ! #X obj 330 188 tgl 15 1 empty empty empty 0 -6 0 8 -257472 -1 -1 1 1; ! #X text 353 187 enable/disable digitalIns; ! #X msg 330 206 digitalIns $1; ! #X msg 330 164 analogIns 6; #N canvas 162 133 570 420 serin 0; ! #X obj 165 61 cnv 15 15 15 empty $0-analog-number-canvas 6 4 8 0 14 -233017 -1 0; #X obj 60 61 hradio 15 1 1 7 empty empty empty 0 -6 0 8 -225280 -1 ! -1 6; #X obj 60 13 inlet; #X msg 200 202 label $1; --- 37,109 ---- #X obj 434 321 tgl 15 0 empty empty changes 0 -6 0 8 -262144 -1 -1 0 1; #X obj 373 321 tgl 15 0 empty empty all 0 -6 0 8 -262144 -1 -1 0 1 ; ! #N canvas 110 264 433 283 decode 0; ! #X obj 138 25 inlet; ! #X obj 343 212 tgl 15 0 empty empty 0 4 25 1 12 -262144 -1 -1 1 1; ! #X obj 326 212 tgl 15 0 empty empty 1 4 25 1 12 -262144 -1 -1 0 2; ! #X obj 309 212 tgl 15 0 empty empty 2 4 25 1 12 -262144 -1 -1 0 4; ! #X obj 292 212 tgl 15 0 empty empty 3 4 25 1 12 -262144 -1 -1 8 8; ! #X obj 275 212 tgl 15 0 empty empty 4 4 25 1 12 -262144 -1 -1 16 16 ; ! #X obj 241 212 tgl 15 0 empty empty 6 4 25 1 12 -262144 -1 -1 0 256 ; ! #X floatatom 193 45 5 0 0 0 - - -; ! #X obj 258 212 tgl 15 0 empty empty 5 3 25 1 12 -262144 -1 -1 32 32 ; ! #X obj 248 129 debytemask; ! #X obj 89 84 >> 7; ! #X obj 183 212 tgl 15 0 empty empty 7 4 25 1 12 -262144 -1 -1 0 1; ! #X obj 166 212 tgl 15 0 empty empty 8 4 25 1 12 -262144 -1 -1 0 4096 ; ! #X obj 149 212 tgl 15 0 empty empty 9 4 25 1 12 -262144 -1 -1 0 2048 ; ! #X obj 132 212 tgl 15 0 empty empty 10 4 25 1 12 -262144 -1 -1 0 1024 ! ; ! #X obj 115 212 tgl 15 0 empty empty 11 4 25 1 12 -262144 -1 -1 0 512 ! ; ! #X obj 81 212 tgl 15 0 empty empty 13 2 25 1 12 -262144 -1 -1 0 256 ! ; ! #X obj 98 212 tgl 15 0 empty empty 12 2 25 1 12 -262144 -1 -1 0 32 ! ; ! #X obj 88 129 debytemask; ! #X connect 0 0 7 0; ! #X connect 0 0 9 0; ! #X connect 0 0 10 0; ! #X connect 9 1 6 0; ! #X connect 9 2 8 0; ! #X connect 9 3 5 0; ! #X connect 9 4 4 0; ! #X connect 9 5 3 0; ! #X connect 9 6 2 0; ! #X connect 9 7 1 0; ! #X connect 10 0 18 0; ! #X connect 18 1 16 0; ! #X connect 18 2 17 0; ! #X connect 18 3 15 0; ! #X connect 18 4 14 0; ! #X connect 18 5 13 0; ! #X connect 18 6 12 0; ! #X connect 18 7 11 0; #X restore 471 486 pd decode buttons; #X obj 93 89 hsl 150 17 0 1 0 0 empty empty PWM_control_(0-1) -2 -6 1 10 -225271 -1 -1 0 0; ! #X obj 58 315 tgl 15 1 empty empty empty 0 -6 0 8 -225271 -1 -1 1 1 ; #X obj 21 377 route analog0 analog1 analog2 analog3 analog4 analog5 ; ! #X obj 577 441 print GARBAGE; #X floatatom 424 488 6 0 0 0 - - -; ! #X text 459 137 how many analogIns to enable:; ! #X obj 460 198 tgl 15 1 empty empty empty 0 -6 0 8 -257472 -1 -1 1 1; ! #X text 483 197 enable/disable digitalIns; ! #X msg 460 216 digitalIns $1; ! #X msg 460 174 analogIns 0; #N canvas 162 133 570 420 serin 0; ! #X obj 165 61 cnv 15 15 15 empty $0-analog-number-canvas 0 4 8 0 14 -233017 -1 0; #X obj 60 61 hradio 15 1 1 7 empty empty empty 0 -6 0 8 -225280 -1 ! -1 0; #X obj 60 13 inlet; #X msg 200 202 label $1; *************** *** 163,170 **** #X connect 11 0 9 0; #X coords 0 -1 1 1 121 17 1 60 60; ! #X restore 330 144 pd serin; ! #X text 546 47 13; ! #X text 328 33 turn on output mode for each pin (off = input); ! #N canvas 0 22 269 256 speed 0; #X obj 21 41 inlet; #X obj 21 62 maxlib/speedlim 100; --- 128,133 ---- #X connect 11 0 9 0; #X coords 0 -1 1 1 121 17 1 60 60; ! #X restore 460 154 pd serin; ! #N canvas 0 22 409 289 speed 0; #X obj 21 41 inlet; #X obj 21 62 maxlib/speedlim 100; *************** *** 185,191 **** #X obj 122 186 maxlib/speedlim 100; #X obj 122 208 outlet; ! #X obj 132 175 inlet; ! #X obj 132 196 maxlib/speedlim 100; ! #X obj 132 218 outlet; #X connect 0 0 1 0; #X connect 1 0 2 0; --- 148,153 ---- #X obj 122 186 maxlib/speedlim 100; #X obj 122 208 outlet; ! #X obj 262 175 inlet; ! #X obj 262 218 outlet; #X connect 0 0 1 0; #X connect 1 0 2 0; *************** *** 201,205 **** #X connect 16 0 17 0; #X connect 18 0 19 0; - #X connect 19 0 20 0; #X restore 21 399 pd speed limiting for displaying values with pegging the CPU; --- 163,166 ---- *************** *** 233,237 **** #X connect 11 0 10 0; #X restore 313 339 pd debugging stuff; - #X text 351 235 use raw data to save settings more compactly; #X floatatom 21 424 5 0 0 3 analog0 - -; #X floatatom 90 424 5 0 0 3 analog1 - -; --- 194,197 ---- *************** *** 240,273 **** #X floatatom 297 424 5 0 0 3 analog4 - -; #X floatatom 366 424 5 0 0 3 analog5 - -; ! #X text 415 47 4; ! #X text 384 47 2; ! #X text 429 47 5; ! #X text 444 47 6; ! #X text 400 47 3; ! #X msg 330 103 outputMode 0 1; ! #N canvas 304 39 554 377 sending 0; #X obj 167 325 outlet; ! #X obj 49 64 tgl 15 0 empty empty 0 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 66 64 tgl 15 0 empty empty 1 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 83 64 tgl 15 0 empty empty 2 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 100 64 tgl 15 0 empty empty 3 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 117 64 tgl 15 0 empty empty 4 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 134 64 tgl 15 0 empty empty 5 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 151 64 tgl 15 0 empty empty 6 4 -6 1 12 -233017 -1 -1 0 1; #X text 60 11 The 8th bit is not used in the bitmask , there are 7 bits of digital output values per byte.; ! #X obj 168 64 tgl 15 0 empty empty 7 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 185 64 tgl 15 0 empty empty 8 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 202 64 tgl 15 0 empty empty 9 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 219 64 tgl 15 0 empty empty 10 0 -6 1 12 -233017 -1 -1 0 1; ! #X obj 236 64 tgl 15 0 empty empty 11 0 -6 1 12 -233017 -1 -1 0 1; ! #X obj 253 64 tgl 15 0 empty empty 12 0 -6 1 12 -233017 -1 -1 0 1; ! #X obj 270 64 tgl 15 0 empty empty 13 0 -6 1 12 -233017 -1 -1 0 1; #X obj 167 140 trigger bang float; - #X obj 167 105 mapping/bytemask; - #X obj 48 105 mapping/bytemask; #X obj 380 175 tgl 15 0 empty empty empty 0 -6 0 8 -225271 -1 -1 0 16383; ! #X obj 380 138 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 16383; #X obj 379 156 metro 100; --- 200,225 ---- #X floatatom 297 424 5 0 0 3 analog4 - -; #X floatatom 366 424 5 0 0 3 analog5 - -; ! #N canvas 304 39 550 365 sending 0; #X obj 167 325 outlet; ! #X obj 168 77 tgl 15 0 empty empty 6 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 185 77 tgl 15 0 empty empty 5 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 202 77 tgl 15 0 empty empty 4 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 219 77 tgl 15 0 empty empty 3 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 236 77 tgl 15 0 empty empty 2 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 253 77 tgl 15 0 empty empty 1 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 270 77 tgl 15 0 empty empty 0 4 -6 1 12 -233017 -1 -1 0 1; #X text 60 11 The 8th bit is not used in the bitmask , there are 7 bits of digital output values per byte.; ! #X obj 49 77 tgl 15 0 empty empty 13 0 -6 1 12 -233017 -1 -1 0 1; ! #X obj 66 77 tgl 15 0 empty empty 12 0 -6 1 12 -233017 -1 -1 0 1; ! #X obj 83 77 tgl 15 0 empty empty 11 0 -6 1 12 -233017 -1 -1 0 1; ! #X obj 100 77 tgl 15 0 empty empty 10 0 -6 1 12 -233017 -1 -1 0 1; ! #X obj 117 77 tgl 15 0 empty empty 9 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 134 77 tgl 15 0 empty empty 8 4 -6 1 12 -233017 -1 -1 0 1; ! #X obj 151 77 tgl 15 0 empty empty 7 4 -6 1 12 -233017 -1 -1 0 1; #X obj 167 140 trigger bang float; #X obj 380 175 tgl 15 0 empty empty empty 0 -6 0 8 -225271 -1 -1 0 16383; ! #X obj 380 138 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 16383 16383; #X obj 379 156 metro 100; *************** *** 277,314 **** #X text 251 205 this will flash all pins set to output; #X obj 380 45 inlet; ! #X connect 1 0 18 0; ! #X connect 2 0 18 1; ! #X connect 3 0 18 2; ! #X connect 4 0 18 3; ! #X connect 5 0 18 4; ! #X connect 6 0 18 5; ! #X connect 7 0 18 6; ! #X connect 9 0 17 0; ! #X connect 10 0 17 1; ! #X connect 11 0 17 2; ! #X connect 12 0 17 3; ! #X connect 13 0 17 4; ! #X connect 14 0 17 5; ! #X connect 15 0 17 6; ! #X connect 16 0 23 0; ! #X connect 16 1 24 0; ! #X connect 17 0 16 0; ! #X connect 18 0 23 0; ! #X connect 19 0 0 0; ! #X connect 20 0 21 0; ! #X connect 21 0 19 0; ! #X connect 22 0 0 0; ! #X connect 23 0 22 0; ! #X connect 24 0 22 1; ! #X connect 26 0 20 0; #X restore 20 249 pd sending digital outs; - #X msg 398 251 251 , 9 , 20 , 142 , 213; #X text 325 292 <- argument sets port #; #X msg 57 89 off; - #X text 475 47 8; - #X text 492 47 9; - #X text 516 47 11; - #X text 531 47 12; - #X text 370 47 1; #X obj 35 61 hradio 15 1 0 14 empty empty empty 0 -6 0 8 -176124 -1 -1 0; --- 229,262 ---- #X text 251 205 this will flash all pins set to output; #X obj 380 45 inlet; ! #X obj 91 118 bytemask; ! #X obj 167 118 bytemask; ! #X connect 1 0 26 1; ! #X connect 2 0 26 2; ! #X connect 3 0 26 3; ! #X connect 4 0 26 4; ! #X connect 5 0 26 5; ! #X connect 6 0 26 6; ! #X connect 7 0 26 7; ! #X connect 9 0 25 1; ! #X connect 10 0 25 2; ! #X connect 11 0 25 3; ! #X connect 12 0 25 4; ! #X connect 13 0 25 5; ! #X connect 14 0 25 6; ! #X connect 15 0 25 7; ! #X connect 16 0 21 0; ! #X connect 16 1 22 0; ! #X connect 17 0 0 0; ! #X connect 18 0 19 0; ! #X connect 19 0 17 0; ! #X connect 20 0 0 0; ! #X connect 21 0 20 0; ! #X connect 22 0 20 1; ! #X connect 24 0 18 0; ! #X connect 25 0 21 0; ! #X connect 26 0 16 0; #X restore 20 249 pd sending digital outs; #X text 325 292 <- argument sets port #; #X msg 57 89 off; #X obj 35 61 hradio 15 1 0 14 empty empty empty 0 -6 0 8 -176124 -1 -1 0; *************** *** 368,442 **** #X connect 17 0 14 0; #X restore 36 115 pd pwm; ! #X msg 36 135 pwm 10 0.436242; ! #N canvas 45 415 403 327 pin 0; ! #X obj 42 19 inlet; ! #X obj 218 20 inlet; ! #X obj 64 154 pack float float; ! #X obj 218 92 trigger bang float; ! #X text 82 19 input(0)/output(1); ! #X msg 64 180 outputMode $2 $1; ! #X obj 64 277 outlet; ! #X obj 64 206 trigger bang anything; ! #X obj 206 226 list; ! #X msg 206 246 set $1 $2 $3; ! #X connect 0 0 2 0; ! #X connect 1 0 3 0; ! #X connect 2 0 5 0; ! #X connect 3 0 2 0; ! #X connect 3 1 2 1; ! #X connect 5 0 7 0; ! #X connect 7 0 6 0; ! #X connect 7 1 8 0; ! #X connect 8 0 9 0; ! #X connect 9 0 6 0; ! #X restore 330 82 pd pin mode; #X obj 255 293 arduino 1; ! #X text 17 7 The [arduino] object works with the Firmata firmware for ! Arduino.; ! #X msg 195 196 info; ! #X obj 20 230 tgl 15 0 empty empty empty 0 -6 0 8 -225271 -1 -1 0 16383 ! ; #X text 38 229 pulse all outputs; ! #X connect 0 0 71 0; ! #X connect 1 0 0 0; ! #X connect 5 0 71 0; ! #X connect 6 0 30 2; ! #X connect 7 0 70 1; ! #X connect 8 0 70 0; ! #X connect 9 0 30 1; ! #X connect 11 0 68 1; ! #X connect 15 0 17 0; ! #X connect 16 0 15 1; ! #X connect 17 0 29 0; ! #X connect 17 1 29 1; ! #X connect 17 2 29 2; ! #X connect 17 3 29 3; ! #X connect 17 4 29 4; ! #X connect 17 5 29 5; ! #X connect 17 6 29 6; ! #X connect 18 0 10 0; ! #X connect 18 0 20 0; ! #X connect 18 1 19 0; ! #X connect 22 0 24 0; ! #X connect 24 0 71 0; ! #X connect 25 0 71 0; ! #X connect 26 0 25 0; ! #X connect 29 0 32 0; ! #X connect 29 1 33 0; ! #X connect 29 2 34 0; ! #X connect 29 3 35 0; ! #X connect 29 4 36 0; ! #X connect 29 5 37 0; ! #X connect 29 6 18 0; ! #X connect 43 0 71 0; ! #X connect 44 0 71 0; ! #X connect 45 0 71 1; ! #X connect 47 0 68 1; ! #X connect 53 0 68 0; ! #X connect 68 0 69 0; ! #X connect 69 0 71 0; ! #X connect 70 0 43 0; ! #X connect 71 0 15 0; ! #X connect 71 1 30 0; ! #X connect 73 0 71 0; ! #X connect 74 0 44 0; --- 316,475 ---- #X connect 17 0 14 0; #X restore 36 115 pd pwm; ! #X msg 36 135 pwm 11 off; #X obj 255 293 arduino 1; ! #X msg 333 176 info; ! #X obj 20 230 tgl 15 0 empty empty empty 0 -6 0 8 -225271 -1 -1 16383 ! 16383; #X text 38 229 pulse all outputs; ! #X msg 372 176 version; ! #X obj 435 422 route digital version; ! #X obj 506 460 print [arduino]_VERSION; ! #X obj 21 345 spigot; ! #X text 18 7 The [arduino] object works with the Firmata firmware for ! Arduino (previously known as Pduino firmware).; ! #X obj 352 70 tgl 15 0 empty empty 1 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 370 70 tgl 15 0 empty empty 2 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 388 70 tgl 15 0 empty empty 3 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 406 70 tgl 15 0 empty empty 4 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 424 70 tgl 15 0 empty empty 5 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 442 70 tgl 15 0 empty empty 6 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 460 70 tgl 15 0 empty empty 7 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 478 70 tgl 15 0 empty empty 8 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 496 70 tgl 15 0 empty empty 9 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 514 70 tgl 15 0 empty empty 10 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 532 70 tgl 15 0 empty empty 11 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 550 70 tgl 15 0 empty empty 12 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 568 70 tgl 15 0 empty empty 13 3 -6 0 10 -260818 -1 -1 0 1; ! #X obj 594 50 tgl 20 0 empty empty empty 0 -6 0 8 -258699 -1 -1 0 1 ! ; ! #X obj 334 70 tgl 15 0 empty empty 0 3 -6 0 10 -260818 -1 -1 0 1; ! #N canvas 554 328 750 300 send-to-arduino---------------- 0; ! #X obj 49 54 inlet; ! #X obj 89 54 inlet; ! #X obj 128 54 inlet; ! #X obj 168 54 inlet; ! #X obj 208 54 inlet; ! #X obj 248 54 inlet; ! #X obj 287 54 inlet; ! #X obj 327 54 inlet; ! #X obj 368 53 inlet; ! #X obj 408 53 inlet; ! #X obj 447 53 inlet; ! #X obj 487 53 inlet; ! #X obj 527 53 inlet; ! #X msg 49 96 outputMode 0 $1; ! #X msg 89 118 outputMode 1 $1; ! #X msg 128 140 outputMode 2 $1; ! #X msg 168 160 outputMode 3 $1; ! #X msg 208 92 outputMode 4 $1; ! #X msg 248 114 outputMode 5 $1; ! #X msg 287 136 outputMode 6 $1; ! #X msg 327 156 outputMode 7 $1; ! #X msg 368 88 outputMode 8 $1; ! #X msg 408 110 outputMode 9 $1; ! #X msg 447 132 outputMode 10 $1; ! #X msg 487 152 outputMode 11 $1; ! #X msg 527 80 outputMode 12 $1; ! #X obj 566 53 inlet; ! #X msg 566 100 outputMode 13 $1; ! #X obj 305 226 outlet; ! #X connect 0 0 13 0; ! #X connect 1 0 14 0; ! #X connect 2 0 15 0; ! #X connect 3 0 16 0; ! #X connect 4 0 17 0; ! #X connect 5 0 18 0; ! #X connect 6 0 19 0; ! #X connect 7 0 20 0; ! #X connect 8 0 21 0; ! #X connect 9 0 22 0; ! #X connect 10 0 23 0; ! #X connect 11 0 24 0; ! #X connect 12 0 25 0; ! #X connect 13 0 28 0; ! #X connect 14 0 28 0; ! #X connect 15 0 28 0; ! #X connect 16 0 28 0; ! #X connect 17 0 28 0; ! #X connect 18 0 28 0; ! #X connect 19 0 28 0; ! #X connect 20 0 28 0; ! #X connect 21 0 28 0; ! #X connect 22 0 28 0; ! #X connect 23 0 28 0; ! #X connect 24 0 28 0; ! #X connect 25 0 28 0; ! #X connect 26 0 27 0; ! #X connect 27 0 28 0; ! #X restore 334 97 pd send-to-arduino----------------; ! #X text 328 34 turn on output mode for each pin (off=input); ! #X text 616 53 all; ! #X connect 1 0 49 0; ! #X connect 2 0 1 0; ! #X connect 6 0 49 0; ! #X connect 7 0 22 2; ! #X connect 8 0 22 1; ! #X connect 10 0 47 1; ! #X connect 11 0 56 1; ! #X connect 12 0 21 0; ! #X connect 12 1 21 1; ! #X connect 12 2 21 2; ! #X connect 12 3 21 3; ! #X connect 12 4 21 4; ! #X connect 12 5 21 5; ! #X connect 12 6 21 6; ! #X connect 16 0 18 0; ! #X connect 18 0 49 0; ! #X connect 19 0 49 0; ! #X connect 20 0 19 0; ! #X connect 21 0 23 0; ! #X connect 21 1 24 0; ! #X connect 21 2 25 0; ! #X connect 21 3 26 0; ! #X connect 21 4 27 0; ! #X connect 21 5 28 0; ! #X connect 21 6 54 0; ! #X connect 29 0 49 0; ! #X connect 31 0 47 1; ! #X connect 32 0 47 0; ! #X connect 47 0 48 0; ! #X connect 48 0 49 0; ! #X connect 49 0 56 0; ! #X connect 49 1 22 0; ! #X connect 50 0 49 0; ! #X connect 51 0 29 0; ! #X connect 53 0 49 0; ! #X connect 54 0 9 0; ! #X connect 54 0 14 0; ! #X connect 54 1 55 0; ! #X connect 54 2 13 0; ! #X connect 56 0 12 0; ! #X connect 58 0 73 1; ! #X connect 59 0 73 2; ! #X connect 60 0 73 3; ! #X connect 61 0 73 4; ! #X connect 62 0 73 5; ! #X connect 63 0 73 6; ! #X connect 64 0 73 7; ! #X connect 65 0 73 8; ! #X connect 66 0 73 9; ! #X connect 67 0 73 10; ! #X connect 68 0 73 11; ! #X connect 69 0 73 12; ! #X connect 70 0 73 13; ! #X connect 71 0 70 0; ! #X connect 71 0 69 0; ! #X connect 71 0 68 0; ! #X connect 71 0 67 0; ! #X connect 71 0 66 0; ! #X connect 71 0 65 0; ! #X connect 71 0 64 0; ! #X connect 71 0 63 0; ! #X connect 71 0 62 0; ! #X connect 71 0 61 0; ! #X connect 71 0 60 0; ! #X connect 71 0 59 0; ! #X connect 71 0 58 0; ! #X connect 71 0 72 0; ! #X connect 72 0 73 0; ! #X connect 73 0 49 0;