#N canvas 139 310 585 366 10; #X obj 32 26 inlet; #X obj 32 304 outlet; #X obj 515 304 outlet; #N canvas 203 350 822 340 command 0; #X obj 24 7 inlet; #X obj 299 298 outlet; #N canvas 631 434 547 478 digital-out 0; #X obj 4 15 inlet; #X obj 284 440 outlet; #X msg 373 158 \$1; #X text 402 157 add channel to command; #X text 411 201 0x90; #X obj 373 202 + 144; #X obj 373 180 div 8; #X obj 212 391 float; #X obj 145 391 float; #X obj 459 16 inlet; #X text 339 15 state from port-out; #X msg 157 84 \$2; #X obj 236 143 <<; #X msg 236 122 1 \$1; #X obj 284 242 * 8; #X obj 172 371 >> 7; #X obj 239 371 & 127; #X obj 249 314 &; #X msg 290 267 255 \$1; #X obj 290 288 <<; #X obj 5 55 trigger bang bang bang anything anything anything; #X obj 194 255 float; #X obj 255 338 >>; #X obj 223 215 |; #X obj 219 173 float; #X obj 158 172 float; #X obj 157 115 select 0 1; #X obj 85 215 expr ~$f1 & $f2; #X floatatom 462 49 0 0 0 0 - - -; #X connect 0 0 20 0; #X connect 2 0 6 0; #X connect 5 0 1 0; #X connect 6 0 5 0; #X connect 6 0 14 0; #X connect 7 0 1 0; #X connect 8 0 1 0; #X connect 9 0 23 0; #X connect 9 0 28 0; #X connect 11 0 26 0; #X connect 12 0 24 1; #X connect 12 0 25 1; #X connect 13 0 12 0; #X connect 14 0 18 0; #X connect 14 0 22 1; #X connect 15 0 8 1; #X connect 16 0 7 1; #X connect 17 0 22 0; #X connect 18 0 19 0; #X connect 19 0 17 1; #X connect 20 0 8 0; #X connect 20 1 7 0; #X connect 20 3 11 0; #X connect 20 4 13 0; #X connect 20 5 2 0; #X connect 21 0 23 1; #X connect 21 0 27 1; #X connect 21 0 17 0; #X connect 22 0 16 0; #X connect 22 0 15 0; #X connect 23 0 21 0; #X connect 24 0 23 0; #X connect 25 0 27 0; #X connect 26 0 25 0; #X connect 26 1 24 0; #X connect 27 0 21 0; #X restore 326 122 pd digital-out; #N canvas 49 460 541 377 pinMode 0; #X obj 51 8 inlet; #X obj 51 350 outlet; #X text 141 54 pin#; #X text 321 56 mode; #X obj 174 147 moses 128; #X msg 51 227 244; #X text 194 131 do bounds checking to be safe; #X obj 51 252 pack float float float; #X obj 279 147 moses 128; #X obj 225 255 bang; #X obj 225 320 list trim; #X obj 225 300 list prepend ERROR:; #X msg 225 275 pinMode pin# greater than 127; #X obj 330 213 bang; #X msg 330 233 pinMode mode greater than 127; #X obj 225 340 print [arduino]; #N canvas 580 301 396 304 turn 0; #X obj 123 21 inlet; #X obj 43 21 inlet; #X obj 123 78 select 0; #X text 178 78 INPUT; #X obj 215 252 outlet; #X obj 110 135 spigot; #X msg 123 109 1; #X obj 215 180 >> 3; #X obj 110 158 trigger bang float; #X msg 152 109 0; #X text 254 201 0xD0; #X obj 215 201 + 208; #X obj 215 228 pack float 1; #X text 42 202 generate digitalIns message; #X connect 0 0 2 0; #X connect 1 0 5 0; #X connect 2 0 6 0; #X connect 5 0 8 0; #X connect 6 0 5 1; #X connect 7 0 11 0; #X connect 8 0 9 0; #X connect 8 1 7 0; #X connect 9 0 5 1; #X connect 11 0 12 0; #X connect 12 0 4 0; #X restore 174 184 pd turn digital reporting on; #X obj 51 32 trigger bang anything; #X obj 174 55 zexy/unpack float float; #X obj 309 78 route float symbol; #N canvas 0 22 450 300 s2f 0; #X obj 72 14 inlet; #X obj 72 265 outlet; #X obj 72 69 select input output analog pwm servo; #X obj 285 262 outlet; #X msg 72 95 0; #X msg 114 95 1; #X msg 157 95 2; #X msg 199 95 3; #X msg 242 95 4; #X connect 0 0 2 0; #X connect 2 0 4 0; #X connect 2 1 5 0; #X connect 2 2 6 0; #X connect 2 3 7 0; #X connect 2 4 8 0; #X connect 2 5 3 0; #X connect 4 0 1 0; #X connect 5 0 1 0; #X connect 6 0 1 0; #X connect 7 0 1 0; #X connect 8 0 1 0; #X restore 361 99 pd s2f; #X obj 414 120 list; #X msg 414 141 unknown pinMode: \$1; #X connect 0 0 17 0; #X connect 4 0 7 1; #X connect 4 0 16 0; #X connect 4 1 9 0; #X connect 5 0 7 0; #X connect 7 0 1 0; #X connect 8 0 7 2; #X connect 8 0 16 1; #X connect 8 1 13 0; #X connect 9 0 12 0; #X connect 10 0 15 0; #X connect 11 0 10 0; #X connect 12 0 11 0; #X connect 13 0 14 0; #X connect 14 0 11 0; #X connect 16 0 1 0; #X connect 17 0 5 0; #X connect 17 1 18 0; #X connect 18 0 4 0; #X connect 18 1 19 0; #X connect 19 0 8 0; #X connect 19 1 20 0; #X connect 19 2 21 0; #X connect 20 0 8 0; #X connect 20 1 21 0; #X connect 21 0 22 0; #X connect 22 0 11 0; #X restore 238 94 pd pinMode; #N canvas 300 373 372 380 pwm 0; #X obj 44 14 inlet; #X obj 44 312 outlet; #X obj 44 79 unpack float float; #X obj 44 124 + 224; #X text 78 125 0xE0; #X obj 44 212 pack float float float; #X obj 149 126 * 255; #X obj 173 165 >> 7; #X obj 108 165 & 127; #X connect 0 0 2 0; #X connect 2 0 3 0; #X connect 2 1 6 0; #X connect 3 0 5 0; #X connect 5 0 1 0; #X connect 6 0 7 0; #X connect 6 0 8 0; #X connect 7 0 5 2; #X connect 8 0 5 1; #X restore 24 94 pd pwm; #X msg 307 94 info; #X msg 500 136 249; #N canvas 0 22 462 312 analogIns 0; #X obj 64 7 inlet; #X obj 64 263 outlet; #X obj 64 65 unpack float float; #X obj 64 175 pack float float; #X obj 169 95 select 0; #X obj 214 118 bang; #X msg 214 140 1; #X msg 169 117 0; #X obj 64 124 + 192; #X obj 64 95 moses 16; #X text 100 123 0xC0; #X connect 0 0 2 0; #X connect 2 0 9 0; #X connect 2 1 4 0; #X connect 3 0 1 0; #X connect 4 0 7 0; #X connect 4 1 5 0; #X connect 5 0 6 0; #X connect 6 0 3 1; #X connect 7 0 3 1; #X connect 8 0 3 0; #X connect 9 0 8 0; #X restore 69 94 pd analogIns; #N canvas 592 91 341 294 digitalIns 0; #X obj 87 26 inlet; #X obj 87 250 outlet; #X text 126 117 0xD0; #X obj 87 90 unpack float float; #X obj 87 146 pack float float; #X obj 87 117 + 208; #X connect 0 0 3 0; #X connect 3 0 5 0; #X connect 3 1 4 1; #X connect 4 0 1 0; #X connect 5 0 4 0; #X restore 150 94 pd digitalIns; #X obj 500 116 bang; #X obj 536 116 bang; #X obj 24 51 route pwm analog analogIns digitalIns pinMode info; #N canvas 626 419 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 697 136 pd sysex; #X obj 697 114 route sysex string; #N canvas 107 510 569 343 port-out 0; #X obj 13 15 inlet; #X obj 167 281 outlet; #X msg 244 82 \$1; #X text 343 149 add channel to command; #X text 309 190 0x90; #X obj 271 191 + 144; #X obj 244 129 moses; #X obj 13 55 trigger bang anything anything anything; #X obj 271 149 moses 16; #X obj 353 219 print [arduino]; #X msg 353 197 ERROR: no such channel: \$1; #X msg 167 82 \$2; #X msg 90 82 \$2; #X obj 167 129 & 127; #X obj 90 130 & 128; #X obj 90 151 == 128; #X obj 21 285 outlet; #X obj 36 230 * 8; #X obj 21 251 <<; #X connect 0 0 7 0; #X connect 2 0 6 0; #X connect 5 0 1 0; #X connect 6 0 10 0; #X connect 6 1 8 0; #X connect 7 1 12 0; #X connect 7 2 11 0; #X connect 7 3 2 0; #X connect 8 0 5 0; #X connect 8 0 17 0; #X connect 8 1 10 0; #X connect 10 0 9 0; #X connect 11 0 13 0; #X connect 12 0 14 0; #X connect 12 0 18 0; #X connect 13 0 1 0; #X connect 14 0 15 0; #X connect 15 0 1 0; #X connect 17 0 18 1; #X connect 18 0 16 0; #X restore 425 122 pd port-out; #X obj 361 77 route digital port version firmware samplingInterval ; #N canvas 429 448 450 300 samplingInterval 0; #X obj 39 252 outlet; #X obj 38 21 inlet; #X text 156 54 LSB; #X obj 39 131 % 128; #X text 103 54 MSB; #X obj 39 107 >> 7; #X obj 39 153 pack float float; #X obj 132 130 % 128; #X text 172 129 only 7-bit chunks of data allowed; #X msg 39 188 240 122 \$2 \$1 247; #X text 152 189 START_SYSEX 0x7A LSB MSB END_SYSEX; #X obj 39 71 trigger anything anything; #X connect 1 0 11 0; #X connect 3 0 6 0; #X connect 5 0 3 0; #X connect 6 0 9 0; #X connect 7 0 6 1; #X connect 9 0 0 0; #X connect 11 0 5 0; #X connect 11 1 7 0; #X restore 572 110 pd samplingInterval; #X msg 536 137 240 121 247; #X connect 0 0 11 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 1 0; #X connect 7 0 1 0; #X connect 8 0 1 0; #X connect 9 0 6 0; #X connect 10 0 17 0; #X connect 11 0 4 0; #X connect 11 1 4 0; #X connect 11 2 7 0; #X connect 11 3 8 0; #X connect 11 4 3 0; #X connect 11 5 5 0; #X connect 11 6 15 0; #X connect 12 0 1 0; #X connect 13 0 12 0; #X connect 13 1 12 1; #X connect 13 2 1 0; #X connect 14 0 2 1; #X connect 14 1 1 0; #X connect 15 0 2 0; #X connect 15 1 14 0; #X connect 15 2 9 0; #X connect 15 3 10 0; #X connect 15 4 16 0; #X connect 15 5 13 0; #X connect 16 0 1 0; #X connect 17 0 1 0; #X restore 32 59 pd command processing; #X text 28 8 processed input; #N canvas 0 22 395 210 report 0; #X obj 62 21 inlet; #X obj 62 50 route open; #X obj 62 74 select 1; #X obj 63 161 outlet; #X msg 62 126 version; #X text 133 101 wait for the Diecimila to reset; #X obj 62 100 delay 2000; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 2 0 6 0; #X connect 4 0 3 0; #X connect 6 0 4 0; #X restore 202 120 pd report firmware version; #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 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 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 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 1 0; #X connect 19 0 1 0; #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; #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 12 0; #X connect 3 0 9 0; #X connect 3 1 4 0; #X connect 4 0 7 1; #X connect 5 0 1 0; #X connect 6 0 5 1; #X connect 7 0 8 0; #X connect 7 0 6 0; #X connect 8 0 7 1; #X connect 9 0 7 0; #X connect 9 1 5 0; #X connect 12 0 13 0; #X connect 12 1 3 0; #X connect 13 0 5 1; #X restore 32 201 pd make lists; #N canvas 0 22 525 269 check 0; #X obj 47 62 inlet; #X obj 47 88 route version; #X obj 87 119 unpack float float; #X obj 132 163 print [arduino]_WARNING_INCOMPATIBLE_FIRMWARE_VERSION ; #X obj 47 192 print Arduino/Firmata_version; #X obj 87 141 select 2; #X text 142 142 <-- sets the protocol major version this is compatible with; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 1 0 4 0; #X connect 2 0 5 0; #X connect 5 1 3 0; #X restore 52 257 pd check version; #X obj 32 143 comport \$1 57600; #N canvas 195 186 541 319 convert 0; #X obj 142 278 outlet; #X obj 340 150 print UNKNOWN_INPUT_COMMAND; #N canvas 126 79 1177 383 digital 0; #X obj 407 4 inlet; #X obj 412 352 outlet; #X obj 33 104 mapping/debytemask; #X obj 407 48 route 0 1 2 3 4 5 6 7; #X msg 33 132 digital 0 \$1; #X msg 42 152 digital 1 \$1; #X msg 51 172 digital 2 \$1; #X msg 58 192 digital 3 \$1; #X msg 65 212 digital 4 \$1; #X msg 71 232 digital 5 \$1; #X msg 78 252 digital 6 \$1; #X msg 86 273 digital 7 \$1; #X obj 33 298 trigger anything; #X obj 173 104 mapping/debytemask; #X obj 173 298 trigger anything; #X obj 313 104 mapping/debytemask; #X obj 313 298 trigger anything; #X obj 453 104 mapping/debytemask; #X obj 453 298 trigger anything; #X obj 593 104 mapping/debytemask; #X obj 593 298 trigger anything; #X obj 733 104 mapping/debytemask; #X obj 733 298 trigger anything; #X obj 873 104 mapping/debytemask; #X obj 873 298 trigger anything; #X obj 1013 104 mapping/debytemask; #X obj 1013 298 trigger anything; #X msg 173 132 digital 8 \$1; #X msg 182 152 digital 9 \$1; #X msg 191 172 digital 10 \$1; #X msg 198 192 digital 11 \$1; #X msg 205 212 digital 12 \$1; #X msg 211 232 digital 13 \$1; #X msg 218 252 digital 14 \$1; #X msg 226 273 digital 15 \$1; #X msg 313 132 digital 16 \$1; #X msg 322 152 digital 17 \$1; #X msg 331 172 digital 18 \$1; #X msg 338 192 digital 19 \$1; #X msg 345 212 digital 20 \$1; #X msg 351 232 digital 21 \$1; #X msg 358 252 digital 22 \$1; #X msg 366 273 digital 23 \$1; #X msg 453 132 digital 24 \$1; #X msg 462 152 digital 25 \$1; #X msg 471 172 digital 26 \$1; #X msg 478 192 digital 27 \$1; #X msg 485 212 digital 28 \$1; #X msg 491 232 digital 29 \$1; #X msg 498 252 digital 30 \$1; #X msg 506 273 digital 31 \$1; #X msg 593 132 digital 32 \$1; #X msg 602 152 digital 33 \$1; #X msg 611 172 digital 34 \$1; #X msg 618 192 digital 35 \$1; #X msg 625 212 digital 36 \$1; #X msg 631 232 digital 37 \$1; #X msg 638 252 digital 38 \$1; #X msg 646 273 digital 39 \$1; #X msg 733 132 digital 40 \$1; #X msg 742 152 digital 41 \$1; #X msg 751 172 digital 42 \$1; #X msg 758 192 digital 43 \$1; #X msg 765 212 digital 44 \$1; #X msg 771 232 digital 45 \$1; #X msg 778 252 digital 46 \$1; #X msg 786 273 digital 47 \$1; #X msg 873 132 digital 48 \$1; #X msg 882 152 digital 49 \$1; #X msg 891 172 digital 50 \$1; #X msg 898 192 digital 51 \$1; #X msg 905 212 digital 52 \$1; #X msg 911 232 digital 53 \$1; #X msg 918 252 digital 54 \$1; #X msg 926 273 digital 55 \$1; #X msg 1013 132 digital 56 \$1; #X msg 1022 152 digital 57 \$1; #X msg 1030 172 digital 58 \$1; #X msg 1038 192 digital 59 \$1; #X msg 1045 212 digital 60 \$1; #X msg 1051 232 digital 61 \$1; #X msg 1058 252 digital 62 \$1; #X msg 1066 273 digital 63 \$1; #X connect 0 0 3 0; #X connect 2 0 4 0; #X connect 2 1 5 0; #X connect 2 2 6 0; #X connect 2 3 7 0; #X connect 2 4 8 0; #X connect 2 5 9 0; #X connect 2 6 10 0; #X connect 2 7 11 0; #X connect 3 0 2 0; #X connect 3 1 13 0; #X connect 3 2 15 0; #X connect 3 3 17 0; #X connect 3 4 19 0; #X connect 3 5 21 0; #X connect 3 6 23 0; #X connect 3 7 25 0; #X connect 4 0 12 0; #X connect 5 0 12 0; #X connect 6 0 12 0; #X connect 7 0 12 0; #X connect 8 0 12 0; #X connect 9 0 12 0; #X connect 10 0 12 0; #X connect 11 0 12 0; #X connect 12 0 1 0; #X connect 13 0 27 0; #X connect 13 1 28 0; #X connect 13 2 29 0; #X connect 13 3 30 0; #X connect 13 4 31 0; #X connect 13 5 32 0; #X connect 13 6 33 0; #X connect 13 7 34 0; #X connect 14 0 1 0; #X connect 15 0 35 0; #X connect 15 1 36 0; #X connect 15 2 37 0; #X connect 15 3 38 0; #X connect 15 4 39 0; #X connect 15 5 40 0; #X connect 15 6 41 0; #X connect 15 7 42 0; #X connect 16 0 1 0; #X connect 17 0 43 0; #X connect 17 1 44 0; #X connect 17 2 45 0; #X connect 17 3 46 0; #X connect 17 4 47 0; #X connect 17 5 48 0; #X connect 17 6 49 0; #X connect 17 7 50 0; #X connect 18 0 1 0; #X connect 19 0 51 0; #X connect 19 1 52 0; #X connect 19 2 53 0; #X connect 19 3 54 0; #X connect 19 4 55 0; #X connect 19 5 56 0; #X connect 19 6 57 0; #X connect 19 7 58 0; #X connect 20 0 1 0; #X connect 21 0 59 0; #X connect 21 1 60 0; #X connect 21 2 61 0; #X connect 21 3 62 0; #X connect 21 4 63 0; #X connect 21 5 64 0; #X connect 21 6 65 0; #X connect 21 7 66 0; #X connect 22 0 1 0; #X connect 23 0 67 0; #X connect 23 1 68 0; #X connect 23 2 69 0; #X connect 23 3 70 0; #X connect 23 4 71 0; #X connect 23 5 72 0; #X connect 23 6 73 0; #X connect 23 7 74 0; #X connect 24 0 1 0; #X connect 25 0 75 0; #X connect 25 1 76 0; #X connect 25 2 77 0; #X connect 25 3 78 0; #X connect 25 4 79 0; #X connect 25 5 80 0; #X connect 25 6 81 0; #X connect 25 7 82 0; #X connect 26 0 1 0; #X connect 27 0 14 0; #X connect 28 0 14 0; #X connect 29 0 14 0; #X connect 30 0 14 0; #X connect 31 0 14 0; #X connect 32 0 14 0; #X connect 33 0 14 0; #X connect 34 0 14 0; #X connect 35 0 16 0; #X connect 36 0 16 0; #X connect 37 0 16 0; #X connect 38 0 16 0; #X connect 39 0 16 0; #X connect 40 0 16 0; #X connect 41 0 16 0; #X connect 42 0 16 0; #X connect 43 0 18 0; #X connect 44 0 18 0; #X connect 45 0 18 0; #X connect 46 0 18 0; #X connect 47 0 18 0; #X connect 48 0 18 0; #X connect 49 0 18 0; #X connect 50 0 18 0; #X connect 51 0 20 0; #X connect 52 0 20 0; #X connect 53 0 20 0; #X connect 54 0 20 0; #X connect 55 0 20 0; #X connect 56 0 20 0; #X connect 57 0 20 0; #X connect 58 0 20 0; #X connect 59 0 22 0; #X connect 60 0 22 0; #X connect 61 0 22 0; #X connect 62 0 22 0; #X connect 63 0 22 0; #X connect 64 0 22 0; #X connect 65 0 22 0; #X connect 66 0 22 0; #X connect 67 0 24 0; #X connect 68 0 24 0; #X connect 69 0 24 0; #X connect 70 0 24 0; #X connect 71 0 24 0; #X connect 72 0 24 0; #X connect 73 0 24 0; #X connect 74 0 24 0; #X connect 75 0 26 0; #X connect 76 0 26 0; #X connect 77 0 26 0; #X connect 78 0 26 0; #X connect 79 0 26 0; #X connect 80 0 26 0; #X connect 81 0 26 0; #X connect 82 0 26 0; #X restore 205 174 pd digital messages; #N canvas 234 399 335 267 analog 0; #X obj 65 16 inlet; #X obj 65 213 outlet; #X msg 65 150 analog \$1 \$2; #X obj 65 129 pack float float; #X obj 158 103 / 1023; #X text 203 104 scale to 0-1; #X obj 65 71 unpack float float; #X connect 0 0 6 0; #X connect 2 0 1 0; #X connect 3 0 2 0; #X connect 4 0 3 1; #X connect 6 0 3 0; #X connect 6 1 4 0; #X restore 342 174 pd analog messages; #X obj 97 13 inlet; #N canvas 476 232 420 451 sysex 0; #X obj 55 16 inlet; #X obj 55 403 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 55 225 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 159 277 pd assemble 7-bit into 14-bit values; #X obj 159 326 list prepend; #X obj 159 347 list trim; #X obj 158 153 trigger anything anything; #X msg 305 177 \$1; #X obj 159 179 list split 1; #X obj 305 201 select 112 113; #X text 336 184 0x70 0x71; #X msg 334 226 string; #X msg 251 226 servo_config; #X text 86 76 0x79; #X obj 55 94 route 121; #X text 96 401 data; #X obj 163 403 outlet; #X text 209 403 status; #X connect 0 0 14 0; #X connect 2 0 16 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 134 174 pd sysex; #N canvas 383 54 457 452 route 0; #X obj 46 24 inlet; #X obj 175 400 outlet; #X obj 233 400 outlet; #X obj 46 91 trigger anything anything; #X obj 292 400 outlet; #X obj 175 339 route digital analog; #X msg 193 115 \$1; #X obj 244 158 moses 224; #X text 314 157 0xE0 analog messages; #X obj 193 136 moses 144; #X text 257 136 0x90 digital messages; #X obj 244 209 bang; #X obj 295 209 bang; #X msg 244 236 digital; #X msg 297 236 analog; #X text 359 178 0xF0; #X obj 346 236 bang; #X obj 211 236 bang; #N canvas 147 640 335 257 parse 0; #X obj 73 18 inlet; #X obj 73 215 outlet; #X obj 73 161 pack float float; #X obj 73 64 unpack float float float; #X obj 166 110 +; #X obj 214 85 << 7; #X obj 73 85 & 15; #X connect 0 0 3 0; #X connect 2 0 1 0; #X connect 3 0 6 0; #X connect 3 1 4 0; #X connect 3 2 5 0; #X connect 4 0 2 1; #X connect 5 0 4 1; #X connect 6 0 2 0; #X restore 46 167 pd parse messages; #X obj 295 178 moses 240; #X obj 175 279 cyclone/prepend; #X connect 0 0 3 0; #X connect 3 0 18 0; #X connect 3 1 6 0; #X connect 5 0 1 0; #X connect 5 1 2 0; #X connect 5 2 4 0; #X connect 6 0 9 0; #X connect 7 0 11 0; #X connect 7 1 19 0; #X connect 9 0 17 0; #X connect 9 1 7 0; #X connect 11 0 13 0; #X connect 12 0 14 0; #X connect 13 0 20 1; #X connect 14 0 20 1; #X connect 16 0 20 1; #X connect 17 0 20 1; #X connect 18 0 20 0; #X connect 19 0 12 0; #X connect 19 1 16 0; #X connect 20 0 5 0; #X restore 205 126 pd route digital/analog; #X obj 97 95 route 249 240; #X text 124 80 0xF9 0xF0; #X msg 40 174 version \$1 \$2; #X obj 263 277 outlet; #X text 312 279 status outlet; #X text 184 277 data outlet; #X connect 2 0 0 0; #X connect 3 0 0 0; #X connect 4 0 7 0; #X connect 5 0 0 0; #X connect 5 1 10 0; #X connect 6 0 2 0; #X connect 6 1 3 0; #X connect 6 2 1 0; #X connect 7 0 9 0; #X connect 7 1 5 0; #X connect 7 2 6 0; #X connect 9 0 10 0; #X restore 32 229 pd convert to symbolic commands; #X text 27 331 (C) Copyright 2006-2008 Free Software Foundation; #X text 334 330 released under the GNU GPL v2 or later; #X obj 450 83 print [arduino]; #X obj 450 36 loadbang; #X text 417 7 supports Firmata v2.1; #N canvas 762 49 450 300 comport 0; #X obj 43 270 outlet; #X obj 43 17 loadbang; #X msg 43 161 pollintervall 10; #X text 56 78 set default poll time to 10ms since for most uses of serial at 115200 baud or less \, the data doesn't come any faster than every 10ms; #X connect 1 0 2 0; #X connect 2 0 0 0; #X restore 46 110 pd comport config; #X msg 450 59 version_0.5; #X connect 0 0 3 0; #X connect 3 0 8 0; #X connect 5 0 3 0; #X connect 6 0 9 0; #X connect 8 0 6 0; #X connect 8 1 5 0; #X connect 8 1 2 0; #X connect 9 0 1 0; #X connect 9 0 7 0; #X connect 9 1 2 0; #X connect 13 0 16 0; #X connect 15 0 8 0; #X connect 16 0 12 0;