/src/main/resources/com/ardublock/block/ardublock.xml
XML | 3100 lines | 2895 code | 180 blank | 25 comment | 0 complexity | dc91ca0956c5a3b8991fbe75a260676c MD5 | raw file
Possible License(s): GPL-3.0
1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE BlockLangDef SYSTEM "lang_def.dtd"> 3<!-- This describes every BlockGenus, BlockDrawer, BlockFamilies in Starlogo-TNG. 4 Note: For BlockGenus, if genus A relies on another genus B, that genus B 5 must be specified in the xml file before genus A is specified./ We impose 6 this requirement so that sanity checks can be made regarding the validity 7 of a default argument when the BlockGenuses are first loaded. --> 8<BlockLangDef> 9 10 <BlockConnectorShapes> 11 <BlockConnectorShape shape-type="number" 12 shape-number="1" /> 13 <BlockConnectorShape shape-type="number-list" 14 shape-number="2" /> 15 <BlockConnectorShape shape-type="number-inv" 16 shape-number="3" /> 17 <BlockConnectorShape shape-type="boolean" 18 shape-number="4" /> 19 <BlockConnectorShape shape-type="boolean-list" 20 shape-number="5" /> 21 <BlockConnectorShape shape-type="boolean-inv" 22 shape-number="6" /> 23 <BlockConnectorShape shape-type="string" 24 shape-number="7" /> 25 <BlockConnectorShape shape-type="string-list" 26 shape-number="8" /> 27 <BlockConnectorShape shape-type="string-inv" 28 shape-number="9" /> 29 <BlockConnectorShape shape-type="poly" 30 shape-number="10" /> 31 <BlockConnectorShape shape-type="poly-list" 32 shape-number="11" /> 33 <BlockConnectorShape shape-type="poly-inv" 34 shape-number="12" /> 35 <BlockConnectorShape shape-type="proc-param" 36 shape-number="13" /> 37 <BlockConnectorShape shape-type="cmd" 38 shape-number="14" /> 39 </BlockConnectorShapes> 40 41 <BlockGenuses> 42 <!-- Number --> 43 44 <BlockGenus name="number" kind="data" color="208 10 16" 45 initlabel="bg.number" editable-label="yes"> 46 <BlockConnectors> 47 <BlockConnector connector-type="number" 48 connector-kind="plug" position-type="mirror" /> 49 </BlockConnectors> 50 </BlockGenus> 51 52 <BlockGenus name="digital-high" kind="data" color="208 10 16" 53 initlabel="bg.digital-high"> 54 <BlockConnectors> 55 <BlockConnector connector-type="boolean" 56 connector-kind="plug" position-type="mirror" /> 57 </BlockConnectors> 58 </BlockGenus> 59 <BlockGenus name="digital-low" kind="data" color="208 10 16" 60 initlabel="bg.digital-low"> 61 <BlockConnectors> 62 <BlockConnector connector-type="boolean" 63 connector-kind="plug" position-type="mirror" /> 64 </BlockConnectors> 65 </BlockGenus> 66 67 <BlockGenus name="digital-on" kind="data" color="208 10 16" 68 initlabel="bg.digital-on"> 69 <BlockConnectors> 70 <BlockConnector connector-type="boolean" 71 connector-kind="plug" position-type="mirror" /> 72 </BlockConnectors> 73 </BlockGenus> 74 75 <BlockGenus name="digital-off" kind="data" color="208 10 16" 76 initlabel="bg.digital-off"> 77 <BlockConnectors> 78 <BlockConnector connector-type="boolean" 79 connector-kind="plug" position-type="mirror" /> 80 </BlockConnectors> 81 </BlockGenus> 82 83 <BlockGenus name="true" kind="data" initlabel="bg.true" 84 color="208 10 16"> 85 <description> 86 <text> 87 Reports the boolean true. 88 </text> 89 </description> 90 <BlockConnectors> 91 <BlockConnector connector-kind="plug" connector-type="boolean" 92 position-type="mirror" /> 93 </BlockConnectors> 94 </BlockGenus> 95 96 <BlockGenus name="false" kind="data" initlabel="bg.false" 97 color="208 10 16"> 98 <description> 99 <text> 100 Reports the boolean false. 101 </text> 102 </description> 103 <BlockConnectors> 104 <BlockConnector connector-kind="plug" connector-type="boolean" 105 position-type="mirror" /> 106 </BlockConnectors> 107 </BlockGenus> 108 109 <BlockGenus name="message" kind="data" color="0 0 255" 110 initlabel="bg.message" editable-label="yes"> 111 <description> 112 <text>string message</text> 113 </description> 114 <BlockConnectors> 115 <BlockConnector connector-type="string" 116 connector-kind="plug" /> 117 <BlockConnector connector-type="string" 118 connector-kind="socket" /> 119 </BlockConnectors> 120 </BlockGenus> 121 122 <BlockGenus name="glue_sn" kind="data" color="127 127 127" 123 initlabel="bg.glue_sn"> 124 <description> 125 <text>glue number to string</text> 126 </description> 127 <BlockConnectors> 128 <BlockConnector connector-type="string" 129 connector-kind="plug" /> 130 <BlockConnector connector-type="number" 131 connector-kind="socket" /> 132 </BlockConnectors> 133 </BlockGenus> 134 135 <BlockGenus name="glue_sb" kind="data" color="127 127 127" 136 initlabel="bg.glue_sb"> 137 <description> 138 <text>glue boolean to string</text> 139 </description> 140 <BlockConnectors> 141 <BlockConnector connector-type="string" 142 connector-kind="plug" /> 143 <BlockConnector connector-type="boolean" 144 connector-kind="socket" /> 145 </BlockConnectors> 146 </BlockGenus> 147 148 <!-- Basic --> 149 150 <BlockGenus name="loop" kind="command" color="255 221 0" 151 initlabel="bg.loop" is-starter="yes" is-terminator="yes" 152 label-unique="yes"> 153 <description> 154 <text>this is the loop of the arduino</text> 155 </description> 156 <BlockConnectors> 157 <BlockConnector connector-type="cmd" connector-kind="socket" 158 label="bc.do" /> 159 </BlockConnectors> 160 </BlockGenus> 161 162 <BlockGenus name="pin-read-digital" kind="data" color="77 191 169" 163 initlabel="bg.pin-read-digital"> 164 <description> 165 <text>Read digital value from pin</text> 166 </description> 167 <BlockConnectors> 168 <BlockConnector connector-type="number" 169 connector-kind="socket" label="#"> 170 <DefaultArg genus-name="number" label="1" /> 171 </BlockConnector> 172 <BlockConnector connector-type="boolean" 173 connector-kind="plug" /> 174 </BlockConnectors> 175 </BlockGenus> 176 177 <BlockGenus name="pin-read-analog" kind="data" color="77 191 169" 178 initlabel="bg.pin-read-analog"> 179 <description> 180 <text>Read analog value from pin</text> 181 </description> 182 <BlockConnectors> 183 <BlockConnector connector-type="number" 184 connector-kind="socket" label="#"> 185 <DefaultArg genus-name="number" label="1" /> 186 </BlockConnector> 187 <BlockConnector connector-type="number" 188 connector-kind="plug" /> 189 </BlockConnectors> 190 </BlockGenus> 191 192 <BlockGenus name="pin-write-digital" kind="command" color="77 191 169" 193 initlabel="bg.pin-write-digital"> 194 <description> 195 <text>write digital to pin</text> 196 </description> 197 <BlockConnectors> 198 <BlockConnector connector-type="number" 199 connector-kind="socket" label="#"> 200 <DefaultArg genus-name="number" label="1" /> 201 </BlockConnector> 202 <BlockConnector connector-type="boolean" 203 connector-kind="socket"> 204 <DefaultArg genus-name="digital-high" label="HIGH" /> 205 </BlockConnector> 206 </BlockConnectors> 207 </BlockGenus> 208 209 <BlockGenus name="setter_variable_number" kind="command" 210 color="255 0 0" initlabel="bg.setter_variable_number"> 211 <description> 212 <text>set a number variable</text> 213 </description> 214 <BlockConnectors> 215 <BlockConnector connector-type="number" 216 connector-kind="socket" label="bc.variable"> 217 <DefaultArg genus-name="variable_number" label="var name" /> 218 </BlockConnector> 219 <BlockConnector connector-type="number" 220 connector-kind="socket" label="bc.value"> 221 <DefaultArg genus-name="number" label="0" /> 222 </BlockConnector> 223 </BlockConnectors> 224 </BlockGenus> 225 226 <BlockGenus name="variable_number" kind="data" 227 initlabel="bg.variable_number" editable-label="yes" is-label-value="yes" 228 color="255 0 255"> 229 <description> 230 <text> 231 Digital Var 232 </text> 233 </description> 234 <BlockConnectors> 235 <BlockConnector connector-type="number" 236 connector-kind="plug" position-type="mirror" /> 237 </BlockConnectors> 238 </BlockGenus> 239 240 <BlockGenus name="setter_variable_digital" kind="command" 241 color="255 0 0" initlabel="bg.setter_variable_digital"> 242 <description> 243 <text>write digital to pin</text> 244 </description> 245 <BlockConnectors> 246 <BlockConnector connector-type="boolean" 247 connector-kind="socket" label="bc.variable"> 248 <DefaultArg genus-name="variable_digital" label="variable name" /> 249 </BlockConnector> 250 <BlockConnector connector-type="boolean" 251 connector-kind="socket" label="bc.value"> 252 <DefaultArg genus-name="digital-high" label="HIGH" /> 253 </BlockConnector> 254 </BlockConnectors> 255 </BlockGenus> 256 257 <BlockGenus name="variable_digital" kind="data" 258 initlabel="bg.variable_digital" editable-label="yes" is-label-value="yes" 259 color="255 0 255"> 260 <description> 261 <text> 262 Digital Var 263 </text> 264 </description> 265 <BlockConnectors> 266 <BlockConnector connector-type="boolean" 267 connector-kind="plug" position-type="mirror" /> 268 </BlockConnectors> 269 </BlockGenus> 270 271 <BlockGenus name="pin-write-analog" kind="command" color="77 191 169" 272 initlabel="bg.pin-write-analog"> 273 <description> 274 <text>write analog to pin</text> 275 </description> 276 <BlockConnectors> 277 <BlockConnector connector-type="number" 278 connector-kind="socket" label="#"> 279 <DefaultArg genus-name="number" label="1" /> 280 </BlockConnector> 281 <BlockConnector connector-type="number" 282 connector-kind="socket"> 283 <DefaultArg genus-name="number" label="255" /> 284 </BlockConnector> 285 </BlockConnectors> 286 </BlockGenus> 287 288 <BlockGenus name="servo" kind="command" color="77 191 169" 289 initlabel="bg.servo"> 290 <description> 291 <text>set a pin to pwm</text> 292 </description> 293 <BlockConnectors> 294 <BlockConnector connector-type="number" 295 connector-kind="socket" label="bc.pin_number"> 296 <DefaultArg genus-name="number" label="1" /> 297 </BlockConnector> 298 <BlockConnector connector-type="number" 299 connector-kind="socket" label="bc.angle"> 300 <DefaultArg genus-name="number" label="1" /> 301 </BlockConnector> 302 </BlockConnectors> 303 </BlockGenus> 304 305 <BlockGenus name="ultrasonic" kind="data" color="77 191 169" 306 initlabel="bg.ultrasonic"> 307 <description> 308 <text>Ultrasonic distance sensor</text> 309 </description> 310 <BlockConnectors> 311 <BlockConnector connector-type="number" 312 connector-kind="plug" label="cm" /> 313 <BlockConnector connector-type="number" 314 connector-kind="socket" label="trigger #"> 315 <DefaultArg genus-name="number" label="1" /> 316 </BlockConnector> 317 <BlockConnector connector-type="number" 318 connector-kind="socket" label="echo #"> 319 <DefaultArg genus-name="number" label="2" /> 320 </BlockConnector> 321 </BlockConnectors> 322 <Images> 323 <Image> 324 <FileLocation>com/ardublock/block/ultrasonic.jpg</FileLocation> 325 </Image> 326 </Images> 327 </BlockGenus> 328 329 <BlockGenus name="tone" kind="command" color="77 191 169" 330 initlabel="tone"> 331 <description> 332 <text>Generates a square wave of the specified frequency (and 50% 333 duty cycle) on a pin. 334 </text> 335 </description> 336 <BlockConnectors> 337 <BlockConnector connector-type="number" 338 connector-kind="socket" label="bc.pin_number"> 339 <DefaultArg genus-name="number" label="8" /> 340 </BlockConnector> 341 <BlockConnector connector-type="number" 342 connector-kind="socket" label="bc.frequency"> 343 <DefaultArg genus-name="number" label="440" /> 344 </BlockConnector> 345 346 </BlockConnectors> 347 </BlockGenus> 348 349 <BlockGenus name="tone_time" kind="command" color="77 191 169" 350 initlabel="tone"> 351 <description> 352 <text>Generates a square wave of the specified frequency (and 50% 353 duty cycle) on a pin. 354 </text> 355 </description> 356 <BlockConnectors> 357 <BlockConnector connector-type="number" 358 connector-kind="socket" label="bc.pin_number"> 359 <DefaultArg genus-name="number" label="8" /> 360 </BlockConnector> 361 <BlockConnector connector-type="number" 362 connector-kind="socket" label="bc.frequency"> 363 <DefaultArg genus-name="number" label="440" /> 364 </BlockConnector> 365 <BlockConnector connector-type="number" 366 connector-kind="socket" label="bc.milliseconds"> 367 <DefaultArg genus-name="number" label="1000" /> 368 </BlockConnector> 369 </BlockConnectors> 370 </BlockGenus> 371 372 <BlockGenus name="no_tone" kind="command" color="77 191 169" 373 initlabel="noTone"> 374 <description> 375 <text>Stops the generation of a square wave triggered by tone(). 376 </text> 377 </description> 378 <BlockConnectors> 379 <BlockConnector connector-type="number" 380 connector-kind="socket" label="bc.pin_number"> 381 <DefaultArg genus-name="number" label="8" /> 382 </BlockConnector> 383 </BlockConnectors> 384 </BlockGenus> 385 386 387 388 <BlockGenus name="if" kind="command" initlabel="bg.if" 389 color="255 221 0"> 390 <description> 391 <text> 392 If 393 <arg n="1" /> 394 is true, the agent will run the blocks attached to 395 <arg n="2" /> 396 </text> 397 <arg-description n="1" name="test"> 398 The condition being 399 tested. 400 </arg-description> 401 402 <arg-description n="2" name="then"> 403 The set of instructions 404 that is done when the condition is true. 405 </arg-description> 406 </description> 407 <BlockConnectors> 408 <BlockConnector label="bc.test" connector-kind="socket" 409 connector-type="boolean" /> 410 <BlockConnector label="bc.then" connector-kind="socket" 411 connector-type="cmd" /> 412 </BlockConnectors> 413 </BlockGenus> 414 415 <BlockGenus name="ifelse" kind="command" initlabel="bg.ifelse" 416 color="255 221 0"> 417 <description> 418 <text> 419 Does the first set of commands if the condition specified is 420 true, 421 otherwise it will do the second set of commands. 422 </text> 423 <arg-description n="1" name="test"> 424 The condition being 425 tested. 426 </arg-description> 427 428 <arg-description n="2" name="then"> 429 The set of instructions 430 that is done when the condition is true. 431 </arg-description> 432 433 <arg-description n="3" name="else"> 434 The set of instructions 435 that is done when the condition is false. 436 </arg-description> 437 </description> 438 <BlockConnectors> 439 <BlockConnector label="bc.test" connector-kind="socket" 440 connector-type="boolean" /> 441 <BlockConnector label="bc.then" connector-kind="socket" 442 connector-type="cmd" /> 443 <BlockConnector label="bc.else" connector-kind="socket" 444 connector-type="cmd" /> 445 </BlockConnectors> 446 </BlockGenus> 447 448 <BlockGenus name="while" kind="command" initlabel="bg.while" 449 color="255 221 0"> 450 <description> 451 <text> 452 While Block 453 </text> 454 </description> 455 <BlockConnectors> 456 <BlockConnector label="bc.condition" connector-kind="socket" 457 connector-type="boolean" /> 458 <BlockConnector label="" connector-kind="socket" 459 connector-type="cmd" /> 460 </BlockConnectors> 461 </BlockGenus> 462 463 <BlockGenus name="repeat_times" kind="command" color="255 221 0" 464 initlabel="bg.repeat_times"> 465 <description> 466 <text>repeat</text> 467 </description> 468 <BlockConnectors> 469 <BlockConnector connector-type="number" 470 connector-kind="socket"> 471 <DefaultArg genus-name="number" label="5" /> 472 </BlockConnector> 473 <BlockConnector connector-type="cmd" connector-kind="socket" /> 474 </BlockConnectors> 475 </BlockGenus> 476 477 <BlockGenus name="subroutine" kind="command" color="177 10 255" initlabel="bg.subroutine" is-starter="yes" is-terminator="yes" 478 label-unique="yes" editable-label="yes"> 479 <description> 480 <text>subroutine</text> 481 </description> 482 <BlockConnectors> 483 <BlockConnector connector-type="cmd" connector-kind="socket" /> 484 </BlockConnectors> 485 </BlockGenus> 486 487 <BlockGenus name="subroutine-ref" kind="command" color="177 10 255" initlabel="bg.subroutine" editable-label="yes"> 488 <description> 489 <text>invoke subroutine</text> 490 </description> 491 </BlockGenus> 492 493 <!-- operator --> 494 495 <BlockGenus name="and" kind="data" initlabel="bg.and" 496 color="149 193 31"> 497 <description> 498 <text> 499 Reports true if both of the two conditions are true. 500 </text> 501 </description> 502 <BlockConnectors> 503 <BlockConnector connector-kind="plug" connector-type="boolean" /> 504 <BlockConnector label="" connector-kind="socket" 505 connector-type="boolean" /> 506 <BlockConnector label="" connector-kind="socket" 507 connector-type="boolean" /> 508 </BlockConnectors> 509 </BlockGenus> 510 511 512 <BlockGenus name="or" kind="function" initlabel="bg.or" 513 color="149 193 31"> 514 <description> 515 <text> 516 Reports true if one or both of the two conditions are true. 517 </text> 518 </description> 519 <BlockConnectors> 520 <BlockConnector connector-kind="plug" connector-type="boolean" /> 521 <BlockConnector label="" connector-kind="socket" 522 connector-type="boolean" /> 523 <BlockConnector label="" connector-kind="socket" 524 connector-type="boolean" /> 525 </BlockConnectors> 526 </BlockGenus> 527 528 <BlockGenus name="not" kind="function" initlabel="bg.not" 529 color="149 193 31"> 530 <description> 531 <text> 532 Reports the opposite of 533 <arg n="1" /> 534 . 535 </text> 536 </description> 537 <BlockConnectors> 538 <BlockConnector connector-kind="plug" connector-type="boolean" /> 539 <BlockConnector label="" connector-kind="socket" 540 connector-type="boolean" /> 541 </BlockConnectors> 542 </BlockGenus> 543 544 545 <!-- Math --> 546 547 <BlockGenus name="addition" kind="function" initlabel="bg.addition" 548 color="149 193 31"> 549 <description> 550 <text> 551 Reports the sum of two numbers ( 552 <arg n="1" /> 553 + 554 <arg n="2" /> 555 ). 556 </text> 557 </description> 558 <BlockConnectors> 559 <BlockConnector label="" connector-kind="plug" 560 connector-type="number" position-type="mirror" /> 561 <BlockConnector label="" connector-kind="socket" 562 connector-type="number" position-type="bottom" /> 563 <BlockConnector label="" connector-kind="socket" 564 connector-type="number" position-type="bottom" /> 565 </BlockConnectors> 566 </BlockGenus> 567 568 <BlockGenus name="subtraction" kind="function" initlabel="bg.subtraction" 569 color="149 193 31"> 570 <description> 571 <text> 572 Reports the difference of two numbers ( 573 <arg n="1" /> 574 - 575 <arg n="2" /> 576 ). 577 </text> 578 </description> 579 <BlockConnectors> 580 <BlockConnector label="" connector-kind="plug" 581 connector-type="number" position-type="mirror" /> 582 <BlockConnector label="" connector-kind="socket" 583 connector-type="number" position-type="bottom" /> 584 <BlockConnector label="" connector-kind="socket" 585 connector-type="number" position-type="bottom" /> 586 </BlockConnectors> 587 </BlockGenus> 588 589 <BlockGenus name="multiplication" kind="function" 590 initlabel="bg.multiplication" color="149 193 31"> 591 <description> 592 <text> 593 Reports the product of two numbers ( 594 <arg n="1" /> 595 x 596 <arg n="2" /> 597 ). 598 </text> 599 </description> 600 <BlockConnectors> 601 <BlockConnector label="" connector-kind="plug" 602 connector-type="number" position-type="mirror" /> 603 <BlockConnector label="" connector-kind="socket" 604 connector-type="number" position-type="bottom" /> 605 <BlockConnector label="" connector-kind="socket" 606 connector-type="number" position-type="bottom" /> 607 </BlockConnectors> 608 </BlockGenus> 609 610 <BlockGenus name="division" kind="function" initlabel="bg.division" 611 color="149 193 31"> 612 <description> 613 <text> 614 Reports the quotient of two numbers ( 615 <arg n="1" /> 616 ÷ 617 <arg n="2" /> 618 ). 619 </text> 620 </description> 621 <BlockConnectors> 622 <BlockConnector label="" connector-kind="plug" 623 connector-type="number" position-type="mirror" /> 624 <BlockConnector label="" connector-kind="socket" 625 connector-type="number" position-type="bottom" /> 626 <BlockConnector label="" connector-kind="socket" 627 connector-type="number" position-type="bottom" /> 628 </BlockConnectors> 629 </BlockGenus> 630 631 <BlockGenus name="modulo" kind="function" color="149 193 31" 632 initlabel="bg.modulo"> 633 <BlockConnectors> 634 <BlockConnector label="" connector-kind="plug" 635 connector-type="number" position-type="mirror" /> 636 <BlockConnector label="" connector-kind="socket" 637 connector-type="number" position-type="bottom" /> 638 <BlockConnector label="" connector-kind="socket" 639 connector-type="number" position-type="bottom" /> 640 </BlockConnectors> 641 </BlockGenus> 642 643 <BlockGenus name="min" kind="function" color="149 193 31" 644 initlabel="bg.min"> 645 <BlockConnectors> 646 <BlockConnector connector-type="number" 647 connector-kind="plug" position-type="mirror" /> 648 <BlockConnector connector-type="number" 649 connector-kind="socket" position-type="bottom" /> 650 <BlockConnector connector-type="number" 651 connector-kind="socket" position-type="bottom" /> 652 </BlockConnectors> 653 </BlockGenus> 654 655 <BlockGenus name="max" kind="function" color="149 193 31" 656 initlabel="bg.max"> 657 <BlockConnectors> 658 <BlockConnector connector-type="number" 659 connector-kind="plug" position-type="mirror" /> 660 <BlockConnector connector-type="number" 661 connector-kind="socket" position-type="bottom" /> 662 <BlockConnector connector-type="number" 663 connector-kind="socket" position-type="bottom" /> 664 </BlockConnectors> 665 </BlockGenus> 666 667 <BlockGenus name="greater" kind="function" color="149 193 31" 668 initlabel="bg.greater"> 669 <description> 670 <text>is upper number greater then lower?</text> 671 </description> 672 <BlockConnectors> 673 <BlockConnector connector-type="boolean" 674 connector-kind="plug" position-type="mirror" /> 675 <BlockConnector connector-type="number" 676 connector-kind="socket" position-type="bottom" /> 677 <BlockConnector connector-type="number" 678 connector-kind="socket" position-type="bottom" /> 679 </BlockConnectors> 680 </BlockGenus> 681 682 <BlockGenus name="less" kind="function" color="149 193 31" 683 initlabel="bg.less"> 684 <description> 685 <text>is upper number less then lower?</text> 686 </description> 687 <BlockConnectors> 688 <BlockConnector connector-type="boolean" 689 connector-kind="plug" position-type="mirror" /> 690 <BlockConnector connector-type="number" 691 connector-kind="socket" position-type="bottom" /> 692 <BlockConnector connector-type="number" 693 connector-kind="socket" position-type="bottom" /> 694 </BlockConnectors> 695 </BlockGenus> 696 697 <BlockGenus name="equal" kind="function" color="149 193 31" 698 initlabel="bg.equal"> 699 <description> 700 <text>is upper number greater then lower?</text> 701 </description> 702 <BlockConnectors> 703 <BlockConnector connector-type="boolean" 704 connector-kind="plug" position-type="mirror" /> 705 <BlockConnector connector-type="number" 706 connector-kind="socket" position-type="bottom" /> 707 <BlockConnector connector-type="number" 708 connector-kind="socket" position-type="bottom" /> 709 </BlockConnectors> 710 </BlockGenus> 711 712 <BlockGenus name="greater_equal" kind="function" color="149 193 31" 713 initlabel="bg.greater_equal"> 714 <description> 715 <text>is upper number greater then lower?</text> 716 </description> 717 <BlockConnectors> 718 <BlockConnector connector-type="boolean" 719 connector-kind="plug" position-type="mirror" /> 720 <BlockConnector connector-type="number" 721 connector-kind="socket" position-type="bottom" /> 722 <BlockConnector connector-type="number" 723 connector-kind="socket" position-type="bottom" /> 724 </BlockConnectors> 725 </BlockGenus> 726 727 <BlockGenus name="less_equal" kind="function" color="149 193 31" 728 initlabel="bg.less_equal"> 729 <description> 730 <text>is upper number greater then lower?</text> 731 </description> 732 <BlockConnectors> 733 <BlockConnector connector-type="boolean" 734 connector-kind="plug" position-type="mirror" /> 735 <BlockConnector connector-type="number" 736 connector-kind="socket" position-type="bottom" /> 737 <BlockConnector connector-type="number" 738 connector-kind="socket" position-type="bottom" /> 739 </BlockConnectors> 740 </BlockGenus> 741 742 <BlockGenus name="not_equal" kind="function" color="149 193 31" 743 initlabel="bg.not_equal"> 744 <description> 745 <text>is upper number greater then lower?</text> 746 </description> 747 <BlockConnectors> 748 <BlockConnector connector-type="boolean" 749 connector-kind="plug" position-type="mirror" /> 750 <BlockConnector connector-type="number" 751 connector-kind="socket" position-type="bottom" /> 752 <BlockConnector connector-type="number" 753 connector-kind="socket" position-type="bottom" /> 754 </BlockConnectors> 755 </BlockGenus> 756 757 <BlockGenus name="abs" kind="function" color="149 193 31" 758 initlabel="bg.abs"> 759 <BlockConnectors> 760 <BlockConnector connector-type="number" 761 connector-kind="plug" /> 762 <BlockConnector connector-type="number" 763 connector-kind="socket" /> 764 </BlockConnectors> 765 </BlockGenus> 766 767 <BlockGenus name="pow" kind="function" color="149 193 31" 768 initlabel="bg.pow"> 769 <BlockConnectors> 770 <BlockConnector connector-type="number" 771 connector-kind="plug" /> 772 <BlockConnector connector-type="number" 773 connector-kind="socket" label="bc.base" /> 774 <BlockConnector connector-type="number" 775 connector-kind="socket" label="bc.exponent" /> 776 </BlockConnectors> 777 </BlockGenus> 778 779 <BlockGenus name="sqrt" kind="function" color="149 193 31" 780 initlabel="bg.sqrt"> 781 <BlockConnectors> 782 <BlockConnector connector-type="number" 783 connector-kind="plug" /> 784 <BlockConnector connector-type="number" 785 connector-kind="socket" /> 786 </BlockConnectors> 787 </BlockGenus> 788 789 <BlockGenus name="sin" kind="function" color="149 193 31" 790 initlabel="bg.sin"> 791 <BlockConnectors> 792 <BlockConnector connector-type="number" 793 connector-kind="plug" /> 794 <BlockConnector connector-type="number" 795 connector-kind="socket" /> 796 </BlockConnectors> 797 </BlockGenus> 798 799 <BlockGenus name="cos" kind="function" color="149 193 31" 800 initlabel="bg.cos"> 801 <BlockConnectors> 802 <BlockConnector connector-type="number" 803 connector-kind="plug" /> 804 <BlockConnector connector-type="number" 805 connector-kind="socket" /> 806 </BlockConnectors> 807 </BlockGenus> 808 809 <BlockGenus name="tan" kind="function" color="149 193 31" 810 initlabel="bg.tan"> 811 <BlockConnectors> 812 <BlockConnector connector-type="number" 813 connector-kind="plug" /> 814 <BlockConnector connector-type="number" 815 connector-kind="socket" /> 816 </BlockConnectors> 817 </BlockGenus> 818 819 820 821 822 <!-- Utility --> 823 <BlockGenus name="delay" kind="command" color="142 160 210" 824 initlabel="bg.delay"> 825 <description> 826 <text>program delay in x milliseconds</text> 827 </description> 828 <BlockConnectors> 829 <BlockConnector connector-type="number" 830 connector-kind="socket" label="bc.milliseconds"> 831 <DefaultArg genus-name="number" label="1000" /> 832 </BlockConnector> 833 </BlockConnectors> 834 </BlockGenus> 835 836 <BlockGenus name="delay_microseconds" kind="command" color="142 160 210" 837 initlabel="bg.delay_microseconds"> 838 <description> 839 <text>program delay in x milliseconds</text> 840 </description> 841 <BlockConnectors> 842 <BlockConnector connector-type="number" 843 connector-kind="socket" label="bc.microseconds"> 844 <DefaultArg genus-name="number" label="1000" /> 845 </BlockConnector> 846 </BlockConnectors> 847 </BlockGenus> 848 849 <BlockGenus name="random" kind="data" color="142 160 210" 850 initlabel="bg.random"> 851 <description> 852 <text>generate a random number less than the number</text> 853 </description> 854 <BlockConnectors> 855 <BlockConnector connector-type="number" 856 connector-kind="plug" /> 857 <BlockConnector connector-type="number" 858 connector-kind="socket" label="bc.max"> 859 <DefaultArg genus-name="number" label="1024" /> 860 </BlockConnector> 861 </BlockConnectors> 862 </BlockGenus> 863 864 <BlockGenus name="millis" kind="data" color="142 160 210" 865 initlabel="bg.millis"> 866 <description> 867 <text>generate a random number less than the number</text> 868 </description> 869 <BlockConnectors> 870 <BlockConnector connector-type="number" 871 connector-kind="plug" position-type="mirror" /> 872 </BlockConnectors> 873 </BlockGenus> 874 875 <BlockGenus name="serial_println" kind="command" color="142 160 210" 876 initlabel="bg.serial_println"> 877 <description> 878 <text>send message via Serial port</text> 879 </description> 880 <BlockConnectors> 881 <BlockConnector connector-type="string" 882 connector-kind="socket"> 883 <DefaultArg genus-name="message" label="message" /> 884 </BlockConnector> 885 </BlockConnectors> 886 </BlockGenus> 887 888 <BlockGenus name="map_common" kind="data" color="142 160 210" 889 initlabel="bg.map_common"> 890 <description> 891 <text>map value from [0, 1023] to [0, 255]</text> 892 </description> 893 <BlockConnectors> 894 <BlockConnector connector-type="number" 895 connector-kind="plug" /> 896 <BlockConnector connector-type="number" 897 connector-kind="socket" label="bc.value"> 898 <DefaultArg genus-name="number" label="1" /> 899 </BlockConnector> 900 </BlockConnectors> 901 </BlockGenus> 902 903 <BlockGenus name="map" kind="data" color="142 160 210" 904 initlabel="bg.map"> 905 <description> 906 <text>map</text> 907 </description> 908 <BlockConnectors> 909 <BlockConnector connector-type="number" 910 connector-kind="plug" /> 911 <BlockConnector connector-type="number" 912 connector-kind="socket" label="bc.value" /> 913 <BlockConnector connector-type="number" 914 connector-kind="socket" label="bc.from"> 915 <DefaultArg genus-name="number" label="0" /> 916 </BlockConnector> 917 <BlockConnector connector-type="number" 918 connector-kind="socket"> 919 <DefaultArg genus-name="number" label="1023" /> 920 </BlockConnector> 921 <BlockConnector connector-type="number" 922 connector-kind="socket" label="bc.to"> 923 <DefaultArg genus-name="number" label="0" /> 924 </BlockConnector> 925 <BlockConnector connector-type="number" 926 connector-kind="socket"> 927 <DefaultArg genus-name="number" label="255" /> 928 </BlockConnector> 929 </BlockConnectors> 930 </BlockGenus> 931 932 <BlockGenus name="wire_read" kind="data" color="142 160 210" 933 initlabel="bg.wire_read"> 934 <description> 935 <text>read data from i2c</text> 936 </description> 937 <BlockConnectors> 938 <BlockConnector connector-type="number" 939 connector-kind="plug" /> 940 <BlockConnector connector-type="number" 941 connector-kind="socket" label="bc.device_address"> 942 <DefaultArg genus-name="number" label="0" /> 943 </BlockConnector> 944 <BlockConnector connector-type="number" 945 connector-kind="socket" label="bc.register_address"> 946 <DefaultArg genus-name="number" label="0" /> 947 </BlockConnector> 948 </BlockConnectors> 949 </BlockGenus> 950 951 <BlockGenus name="wire_write" kind="command" color="142 160 210" 952 initlabel="bg.wire_write"> 953 <description> 954 <text>write data via I2C</text> 955 </description> 956 <BlockConnectors> 957 <BlockConnector connector-type="number" 958 connector-kind="socket" label="bc.device_address"> 959 <DefaultArg genus-name="number" label="0" /> 960 </BlockConnector> 961 <BlockConnector connector-type="number" 962 connector-kind="socket" label="bc.register_address"> 963 <DefaultArg genus-name="number" label="0" /> 964 </BlockConnector> 965 <BlockConnector connector-type="number" 966 connector-kind="socket" label="bc.value"> 967 <DefaultArg genus-name="number" label="0" /> 968 </BlockConnector> 969 </BlockConnectors> 970 </BlockGenus> 971 972 <BlockGenus name="wire_isread" kind="data" color="142 160 210" 973 initlabel="bg.wire_isread"> 974 <description> 975 <text>is last read from I2C success?</text> 976 </description> 977 <BlockConnectors> 978 <BlockConnector connector-type="boolean" 979 connector-kind="plug" position-type="mirror" /> 980 </BlockConnectors> 981 </BlockGenus> 982 983 <!--************************************************************** TinkerKit! **********************************************************************--> 984 <BlockGenus name="Tinker_LED" kind="command" color="255 255 255" 985 initlabel="bg.Tinker_LED"> 986 <description> 987 <text>TinkerKit LED</text> 988 </description> 989 <BlockConnectors> 990 <BlockConnector connector-type="number" 991 connector-kind="socket" label="bc.pin_number"> 992 <DefaultArg genus-name="Tinker_O1" label="O1" /> 993 </BlockConnector> 994 <BlockConnector connector-type="boolean" 995 connector-kind="socket" label="bc.status"> 996 <DefaultArg genus-name="digital-on" label="ON" /> 997 </BlockConnector> 998 </BlockConnectors> 999 <Images> 1000 <Image> 1001 <FileLocation>com/ardublock/block/arduino/Tinker_LED.jpg</FileLocation> 1002 </Image> 1003 </Images> 1004 </BlockGenus> 1005 1006 <BlockGenus name="Tinker_LED_pwm" kind="command" color="255 255 255" 1007 initlabel="bg.Tinker_LED_pwm"> 1008 <description> 1009 <text>TinkerKit LED</text> 1010 </description> 1011 <BlockConnectors> 1012 <BlockConnector connector-type="number" 1013 connector-kind="socket" label="bc.pin_number"> 1014 <DefaultArg genus-name="Tinker_O1" label="O1" /> 1015 </BlockConnector> 1016 <BlockConnector connector-type="number" 1017 connector-kind="socket" label="bc.level"> 1018 <DefaultArg genus-name="number" label="255" /> 1019 </BlockConnector> 1020 </BlockConnectors> 1021 <Images> 1022 <Image> 1023 <FileLocation>com/ardublock/block/arduino/Tinker_LED.jpg</FileLocation> 1024 </Image> 1025 </Images> 1026 </BlockGenus> 1027 1028 <BlockGenus name="Tinker_Mosfet" kind="command" color="255 255 255" 1029 initlabel="bg.Tinker_Mosfet"> 1030 <description> 1031 <text>TinkerKit Mosfet</text> 1032 </description> 1033 <BlockConnectors> 1034 <BlockConnector connector-type="number" 1035 connector-kind="socket" label="bc.pin_number"> 1036 <DefaultArg genus-name="Tinker_O1" label="O1" /> 1037 </BlockConnector> 1038 <BlockConnector connector-type="boolean" 1039 connector-kind="socket" label="bc.status"> 1040 <DefaultArg genus-name="digital-high" label="HIGH" /> 1041 </BlockConnector> 1042 </BlockConnectors> 1043 <Images> 1044 <Image> 1045 <FileLocation>com/ardublock/block/arduino/Tinker_Mosfet.jpg</FileLocation> 1046 </Image> 1047 </Images> 1048 </BlockGenus> 1049 1050 <BlockGenus name="Tinker_Mosfet_pwm" kind="command" color="255 255 255" 1051 initlabel="bg.Tinker_Mosfet_pwm"> 1052 <description> 1053 <text>TinkerKit Mosfet</text> 1054 </description> 1055 <BlockConnectors> 1056 <BlockConnector connector-type="number" 1057 connector-kind="socket" label="bc.pin_number"> 1058 <DefaultArg genus-name="Tinker_O1" label="O1" /> 1059 </BlockConnector> 1060 <BlockConnector connector-type="number" 1061 connector-kind="socket" label="bc.level"> 1062 <DefaultArg genus-name="number" label="255" /> 1063 </BlockConnector> 1064 </BlockConnectors> 1065 <Images> 1066 <Image> 1067 <FileLocation>com/ardublock/block/arduino/Tinker_Mosfet.jpg</FileLocation> 1068 </Image> 1069 </Images> 1070 </BlockGenus> 1071 1072 <BlockGenus name="Tinker_Relay" kind="command" color="255 255 255" 1073 initlabel="bg.Tinker_Relay"> 1074 <description> 1075 <text>TinkerKit Relay</text> 1076 </description> 1077 <BlockConnectors> 1078 <BlockConnector connector-type="number" 1079 connector-kind="socket" label="bc.pin_number"> 1080 <DefaultArg genus-name="Tinker_O1" label="O1" /> 1081 </BlockConnector> 1082 <BlockConnector connector-type="boolean" 1083 connector-kind="socket" label="bc.status"> 1084 <DefaultArg genus-name="digital-high" label="HIGH" /> 1085 </BlockConnector> 1086 </BlockConnectors> 1087 <Images> 1088 <Image> 1089 <FileLocation>com/ardublock/block/arduino/Tinker_Relay.jpg</FileLocation> 1090 </Image> 1091 </Images> 1092 </BlockGenus> 1093 1094 <BlockGenus name="Tinker_Servo" kind="command" color="255 255 255" 1095 initlabel="bg.Tinker_Servo"> 1096 <description> 1097 <text>TinkerKit Servo</text> 1098 </description> 1099 <BlockConnectors> 1100 <BlockConnector connector-type="number" 1101 connector-kind="socket" label="bc.pin_number"> 1102 <DefaultArg genus-name="Tinker_O1" label="O1" /> 1103 </BlockConnector> 1104 <BlockConnector connector-type="number" 1105 connector-kind="socket" label="bc.angle"> 1106 <DefaultArg genus-name="number" label="90" /> 1107 </BlockConnector> 1108 </BlockConnectors> 1109 <Images> 1110 <Image> 1111 <FileLocation>com/ardublock/block/arduino/Tinker_Servo.jpg</FileLocation> 1112 </Image> 1113 </Images> 1114 </BlockGenus> 1115 1116 <BlockGenus name="Tinker_Button" kind="data" color="255 255 255" 1117 initlabel="bg.Tinker_Button"> 1118 <description> 1119 <text>TinkerKit Button</text> 1120 </description> 1121 <BlockConnectors> 1122 <BlockConnector connector-type="boolean" 1123 connector-kind="plug" /> 1124 <BlockConnector connector-type="number" 1125 connector-kind="socket" label="bc.pin_number"> 1126 <DefaultArg genus-name="Tinker_I1" label="I1" /> 1127 </BlockConnector> 1128 </BlockConnectors> 1129 <Images> 1130 <Image> 1131 <FileLocation>com/ardublock/block/arduino/Tinker_Button.png</FileLocation> 1132 </Image> 1133 </Images> 1134 </BlockGenus> 1135 1136 <BlockGenus name="Tinker_Accmeter" kind="data" color="255 255 255" 1137 initlabel="bg.Tinker_Accmeter"> 1138 <description> 1139 <text>TinkerKit Accelerometer</text> 1140 </description> 1141 <BlockConnectors> 1142 <BlockConnector connector-type="number" 1143 connector-kind="plug" /> 1144 <BlockConnector connector-type="number" 1145 connector-kind="socket" label="bc.pin_number"> 1146 <DefaultArg genus-name="Tinker_I1" label="I1" /> 1147 </BlockConnector> 1148 </BlockConnectors> 1149 <Images> 1150 <Image> 1151 <FileLocation>com/ardublock/block/arduino/Tinker_Accmeter.png</FileLocation> 1152 </Image> 1153 </Images> 1154 </BlockGenus> 1155 1156 <BlockGenus name="Tinker_Hall" kind="data" color="255 255 255" 1157 initlabel="bg.Tinker_Hall"> 1158 <description> 1159 <text>TinkerKit Hall Sensor</text> 1160 </description> 1161 <BlockConnectors> 1162 <BlockConnector connector-type="number" 1163 connector-kind="plug" /> 1164 <BlockConnector connector-type="number" 1165 connector-kind="socket" label="bc.pin_number"> 1166 <DefaultArg genus-name="Tinker_I1" label="I1" /> 1167 </BlockConnector> 1168 </BlockConnectors> 1169 <Images> 1170 <Image> 1171 <FileLocation>com/ardublock/block/arduino/Tinker_Hall.png</FileLocation> 1172 </Image> 1173 </Images> 1174 </BlockGenus> 1175 1176 <BlockGenus name="Tinker_LDR" kind="data" color="255 255 255" 1177 initlabel="bg.Tinker_LDR"> 1178 <description> 1179 <text>TinkerKit LDR</text> 1180 </description> 1181 <BlockConnectors> 1182 <BlockConnector connector-type="number" 1183 connector-kind="plug" /> 1184 <BlockConnector connector-type="number" 1185 connector-kind="socket" label="bc.pin_number"> 1186 <DefaultArg genus-name="Tinker_I1" label="I1" /> 1187 </BlockConnector> 1188 </BlockConnectors> 1189 <Images> 1190 <Image> 1191 <FileLocation>com/ardublock/block/arduino/Tinker_LDR.jpg</FileLocation> 1192 </Image> 1193 </Images> 1194 </BlockGenus> 1195 1196 <BlockGenus name="Tinker_LinearPotentiometer" kind="data" 1197 color="255 255 255" initlabel="bg.Tinker_LinearPotentiometer"> 1198 <description> 1199 <text>TinkerKit Accelerometer</text> 1200 </description> 1201 <BlockConnectors> 1202 <BlockConnector connector-type="number" 1203 connector-kind="plug" /> 1204 <BlockConnector connector-type="number" 1205 connector-kind="socket" label="bc.pin_number"> 1206 <DefaultArg genus-name="Tinker_I1" label="I1" /> 1207 </BlockConnector> 1208 </BlockConnectors> 1209 <Images> 1210 <Image> 1211 <FileLocation>com/ardublock/block/arduino/Tinker_LinearPotentiometer.jpg</FileLocation> 1212 </Image> 1213 </Images> 1214 </BlockGenus> 1215 1216 <BlockGenus name="Tinker_RotaryPotentiometer" kind="data" 1217 color="255 255 255" initlabel="bg.Tinker_RotaryPotentiometer"> 1218 <description> 1219 <text>TinkerKit RotaryPotentiometer</text> 1220 </description> 1221 <BlockConnectors> 1222 <BlockConnector connector-type="number" 1223 connector-kind="plug" /> 1224 <BlockConnector connector-type="number" 1225 connector-kind="socket" label="bc.pin_number"> 1226 <DefaultArg genus-name="Tinker_I1" label="I1" /> 1227 </BlockConnector> 1228 </BlockConnectors> 1229 <Images> 1230 <Image> 1231 <FileLocation>com/ardublock/block/arduino/Tinker_RotaryPotentiometer.jpg</FileLocation> 1232 </Image> 1233 </Images> 1234 </BlockGenus> 1235 1236 <BlockGenus name="Tinker_Thermistor" kind="data" color="255 255 255" 1237 initlabel="bg.Tinker_Thermistor"> 1238 <description> 1239 <text>TinkerKit Thermistor</text> 1240 </description> 1241 <BlockConnectors> 1242 <BlockConnector connector-type="number" 1243 connector-kind="plug" /> 1244 <BlockConnector connector-type="number" 1245 connector-kind="socket" label="bc.pin_number"> 1246 <DefaultArg genus-name="Tinker_I1" label="I1" /> 1247 </BlockConnector> 1248 </BlockConnectors> 1249 <Images> 1250 <Image> 1251 <FileLocation>com/ardublock/block/arduino/Tinker_Thermistor.jpg</FileLocation> 1252 </Image> 1253 </Images> 1254 </BlockGenus> 1255 1256 <BlockGenus name="Tinker_Touch" kind="data" color="255 255 255" 1257 initlabel="bg.Tinker_Touch"> 1258 <description> 1259 <text>TinkerKit Touch Sensor</text> 1260 </description> 1261 <BlockConnectors> 1262 <BlockConnector connector-type="boolean" 1263 connector-kind="plug" /> 1264 <BlockConnector connector-type="number" 1265 connector-kind="socket" label="bc.pin_number"> 1266 <DefaultArg genus-name="Tinker_I1" label="I1" /> 1267 </BlockConnector> 1268 </BlockConnectors> 1269 <Images> 1270 <Image> 1271 <FileLocation>com/ardublock/block/arduino/Tinker_Touch.jpg</FileLocation> 1272 </Image> 1273 </Images> 1274 </BlockGenus> 1275 1276 <BlockGenus name="Tinker_Servo" kind="command" color="255 255 255" 1277 initlabel="bg.Tinker_Servo"> 1278 <description> 1279 <text>TinkerKit Servo</text> 1280 </description> 1281 <BlockConnectors> 1282 <BlockConnector connector-type="number" 1283 connector-kind="socket" label="bc.pin_number"> 1284 <DefaultArg genus-name="Tinker_I1" label="I1" /> 1285 </BlockConnector> 1286 <BlockConnector connector-type="number" 1287 connector-kind="socket" label="bc.angle"> 1288 <DefaultArg genus-name="number" label="90" /> 1289 </BlockConnector> 1290 </BlockConnectors> 1291 <Images> 1292 <Image> 1293 <FileLocation>com/ardublock/block/arduino/Tinker_Servo.jpg</FileLocation> 1294 </Image> 1295 </Images> 1296 </BlockGenus> 1297 1298 1299 <BlockGenus name="Tinker_Tilt" kind="data" color="255 255 255" 1300 initlabel="bg.Tinker_Tilt"> 1301 <description> 1302 <text>TinkerKit Tilt</text> 1303 </description> 1304 <BlockConnectors> 1305 <BlockConnector connector-type="boolean" 1306 connector-kind="plug" /> 1307 <BlockConnector connector-type="number" 1308 connector-kind="socket" label="bc.pin_number"> 1309 <DefaultArg genus-name="Tinker_I1" label="I1" /> 1310 </BlockConnector> 1311 </BlockConnectors> 1312 <Images> 1313 <Image> 1314 <FileLocation>com/ardublock/block/arduino/Tinker_Tilt.jpg</FileLocation> 1315 </Image> 1316 </Images> 1317 </BlockGenus> 1318 1319 <BlockGenus name="Tinker_I0" kind="data" color="255 255 255" 1320 initlabel="bg.Tinker_I0" editable-label="no"> 1321 <BlockConnectors> 1322 <BlockConnector connector-type="number" 1323 connector-kind="plug" position-type="mirror" /> 1324 </BlockConnectors> 1325 </BlockGenus> 1326 <BlockGenus name="Tinker_I1" kind="data" color="255 255 255" 1327 initlabel="bg.Tinker_I1" editable-label="no"> 1328 <BlockConnectors> 1329 <BlockConnector connector-type="number" 1330 connector-kind="plug" position-type="mirror" /> 1331 </BlockConnectors> 1332 </BlockGenus> 1333 <BlockGenus name="Tinker_I2" kind="data" color="255 255 255" 1334 initlabel="bg.Tinker_I2" editable-label="no"> 1335 <BlockConnectors> 1336 <BlockConnector connector-type="number" 1337 connector-kind="plug" position-type="mirror" /> 1338 </BlockConnectors> 1339 </BlockGenus> 1340 <BlockGenus name="Tinker_I3" kind="data" color="255 255 255" 1341 initlabel="bg.Tinker_I3" editable-label="no"> 1342 <BlockConnectors> 1343 <BlockConnector connector-type="number" 1344 connector-kind="plug" position-type="mirror" /> 1345 </BlockConnectors> 1346 </BlockGenus> 1347 <BlockGenus name="Tinker_I4" kind="data" color="255 255 255" 1348 initlabel="bg.Tinker_I4" editable-label="no"> 1349 <BlockConnectors> 1350 <BlockConnector connector-type="number" 1351 connector-kind="plug" position-type="mirror" /> 1352 </BlockConnectors> 1353 </BlockGenus> 1354 <BlockGenus name="Tinker_I5" kind="data" color="255 255 255" 1355 initlabel="bg.Tinker_I5" editable-label="no"> 1356 <BlockConnectors> 1357 <BlockConnector connector-type="number" 1358 connector-kind="plug" position-type="mirror" /> 1359 </BlockConnectors> 1360 </BlockGenus> 1361 1362 <BlockGenus name="Tinker_O0" kind="data" color="214 169 54" 1363 initlabel="bg.Tinker_O0" editable-label="no"> 1364 <BlockConnectors> 1365 <BlockConnector connector-type="number" 1366 connector-kind="plug" position-type="mirror" /> 1367 </BlockConnectors> 1368 </BlockGenus> 1369 <BlockGenus name="Tinker_O1" kind="data" color="214 169 54" 1370 initlabel="bg.Tinker_O1" editable-label="no"> 1371 <BlockConnectors> 1372 <BlockConnector connector-type="number" 1373 connector-kind="plug" position-type="mirror" /> 1374 </BlockConnectors> 1375 </BlockGenus> 1376 <BlockGenus name="Tinker_O2" kind="data" color="214 169 54" 1377 initlabel="bg.Tinker_O2" editable-label="no"> 1378 <BlockConnectors> 1379 <BlockConnector connector-type="number" 1380 connector-kind="plug" position-type="mirror" /> 1381 </BlockConnectors> 1382 </BlockGenus> 1383 <BlockGenus name="Tinker_O3" kind="data" color="214 169 54" 1384 initlabel="bg.Tinker_O3" editable-label="no"> 1385 <BlockConnectors> 1386 <BlockConnector connector-type="number" 1387 connector-kind="plug" position-type="mirror" /> 1388 </BlockConnectors> 1389 </BlockGenus> 1390 <BlockGenus name="Tinker_O4" kind="data" color="214 169 54" 1391 initlabel="bg.Tinker_O4" editable-label="no"> 1392 <BlockConnectors> 1393 <BlockConnector connector-type="number" 1394 connector-kind="plug" position-type="mirror" /> 1395 </BlockConnectors> 1396 </BlockGenus> 1397 <BlockGenus name="Tinker_O5" kind="data" color="214 169 54" 1398 initlabel="bg.Tinker_O5" editable-label="no"> 1399 <BlockConnectors> 1400 <BlockConnector connector-type="number" 1401 connector-kind="plug" position-type="mirror" /> 1402 </BlockConnectors> 1403 </BlockGenus> 1404 1405 <!-- Xinchejian --> 1406 1407 <BlockGenus name="xcj_motor_forward" kind="command" color="0 255 0" 1408 initlabel="bg.xcj_motor_forward"> 1409 <description> 1410 <text>forward</text> 1411 </description> 1412 <BlockConnectors> 1413 <BlockConnector connector-type="number" 1414 connector-kind="socket" label="M#"> 1415 <DefaultArg genus-name="number" label="1" /> 1416 </BlockConnector> 1417 <BlockConnector connector-type="number" 1418 connector-kind="socket" label="speed"> 1419 <DefaultArg genus-name="number" label="255" /> 1420 </BlockConnector> 1421 </BlockConnectors> 1422 <Images> 1423 <Image> 1424 <FileLocation>com/ardublock/block/motor.jpg</FileLocation> 1425 </Image> 1426 </Images> 1427 </BlockGenus> 1428 1429 <BlockGenus name="xcj_motor_backward" kind="command" color="0 255 0" 1430 initlabel="bg.xcj_motor_backward"> 1431 <description> 1432 <text>Moving the car backward</text> 1433 </description> 1434 <BlockConnectors> 1435 <BlockConnector connector-type="number" 1436 connector-kind="socket" label="M#"> 1437 <DefaultArg genus-name="number" label="1" /> 1438 </BlockConnector> 1439 <BlockConnector connector-type="number" 1440 connector-kind="socket" label="speed"> 1441 <DefaultArg genus-name="number" label="255" /> 1442 </BlockConnector> 1443 </BlockConnectors> 1444 <Images> 1445 <Image> 1446 <FileLocation>com/ardublock/block/motor.jpg</FileLocation> 1447 </Image> 1448 </Images> 1449 </BlockGenus> 1450 1451 <BlockGenus name="xcj_ms_digital_write" kind="command" 1452 color="0 255 0" initlabel="bg.xcj_ms_digital_write"> 1453 <description> 1454 <text>Write ditial singal to Socket</text> 1455 </description> 1456 <BlockConnectors> 1457 <BlockConnector connector-type="number" 1458 connector-kind="socket" label="S#"> 1459 <DefaultArg genus-name="number" label="1" /> 1460 </BlockConnector> 1461 <BlockConnector connector-type="boolean" 1462 connector-kind="socket" label="bc.status"> 1463 <DefaultArg genus-name="digital-high" label="HIGH" /> 1464 </BlockConnector> 1465 </BlockConnectors> 1466 </BlockGenus> 1467 1468 <BlockGenus name="xcj_ms_digital_read" kind="data" color="0 255 0" 1469 initlabel="bg.xcj_ms_digital_read"> 1470 <description> 1471 <text>Read digital status from socket</text> 1472 </description> 1473 <BlockConnectors> 1474 <BlockConnector connector-type="boolean" 1475 connector-kind="plug" /> 1476 <BlockConnector connector-type="number" 1477 connector-kind="socket" label="S#"> 1478 <DefaultArg genus-name="number" label="1" /> 1479 </BlockConnector> 1480 </BlockConnectors> 1481 </BlockGenus> 1482 1483 <!--************************************************************** DFRobot ***************************************************************************--> 1484 1485 1486 <BlockGenus name="df_digital_viberation_sensor" kind="data" 1487 color="255 102 0" initlabel="bg.df_digital_viberation_sensor"> 1488 <BlockConnectors> 1489 <BlockConnector connector-type="boolean" 1490 connector-kind="plug" /> 1491 <BlockConnector connector-type="number" 1492 connector-kind="socket" label="bc.pin_number"> 1493 <DefaultArg genus-name="number" label="1" /> 1494 </BlockConnector> 1495 </BlockConnectors> 1496 <Images> 1497 <Image> 1498 <FileLocation>com/ardublock/block/dfrobot/dfr0027.png</FileLocation> 1499 </Image> 1500 </Images> 1501 </BlockGenus> 1502 1503 <BlockGenus name="df_digital_tilt_sensor" kind="data" 1504 color="255 102 0" initlabel="bg.df_digital_tilt_sensor"> 1505 <BlockConnectors> 1506 <BlockConnector connector-type="boolean" 1507 connector-kind="plug" /> 1508 <BlockConnector connector-type="number" 1509 connector-kind="socket" label="bc.pin_number"> 1510 <DefaultArg genus-name="number" label="1" /> 1511 </BlockConnector> 1512 </BlockConnectors> 1513 <Images> 1514 <Image> 1515 <FileLocation>com/ardublock/block/dfrobot/dfr0028.png</FileLocation> 1516 </Image> 1517 </Images> 1518 </BlockGenus> 1519 1520 <BlockGenus name="df_digital_infrared_motion_sensor" kind="data" 1521 color="255 102 0" initlabel="bg.df_digital_infrared_motion_sensor"> 1522 <BlockConnectors> 1523 <BlockConnector connector-type="boolean" 1524 connector-kind="plug" /> 1525 <BlockConnector connector-type="number" 1526 connector-kind="socket" label="bc.pin_number"> 1527 <DefaultArg genus-name="number" label="1" /> 1528 </BlockConnector> 1529 </BlockConnectors> 1530 <Images> 1531 <Image> 1532 <FileLocation>com/ardublock/block/dfrobot/sen0018.png</FileLocation> 1533 </Image> 1534 </Images> 1535 </BlockGenus> 1536 1537 <BlockGenus name="df_digital_ir_receiver_module" kind="data" 1538 color="255 102 0" initlabel="bg.df_digital_ir_receiver_module"> 1539 <BlockConnectors> 1540 <BlockConnector connector-type="boolean" 1541 connector-kind="plug" /> 1542 <BlockConnector connector-type="number" 1543 connector-kind="socket" label="bc.pin_number"> 1544 <DefaultArg genus-name="number" label="1" /> 1545 </BlockConnector> 1546 </BlockConnectors> 1547 <Images> 1548 <Image> 1549 <FileLocation>com/ardublock/block/dfrobot/dfr0094.jpg</FileLocation> 1550 </Image> 1551 </Images> 1552 </BlockGenus> 1553 1554 <BlockGenus name="df_adjustable_infrared_sensor_switch" 1555 kind="data" color="255 102 0" initlabel="bg.df_adjustable_infrared_sensor_switch"> 1556 <BlockConnectors> 1557 <BlockConnector connector-type="boolean" 1558 connector-kind="plug" /> 1559 <BlockConnector connector-type="number" 1560 connector-kind="socket" label="bc.pin_number"> 1561 <DefaultArg genus-name="number" label="1" /> 1562 </BlockConnector> 1563 </BlockConnectors> 1564 <Images> 1565 <Image> 1566 <FileLocation>com/ardublock/block/dfrobot/sen0019.jpg</FileLocation> 1567 </Image> 1568 </Images> 1569 </BlockGenus> 1570 1571 <BlockGenus name="df_line_tracking_sensor" kind="data" 1572 color="255 102 0" initlabel="bg.df_line_tracking_sensor"> 1573 <BlockConnectors> 1574 <BlockConnector connector-type="boolean" 1575 connector-kind="plug" /> 1576 <BlockConnector connector-type="number" 1577 connector-kind="socket" label="bc.pin_number"> 1578 <DefaultArg genus-name="number" label="1" /> 1579 </BlockConnector> 1580 </BlockConnectors> 1581 <Images> 1582 <Image> 1583 <FileLocation>com/ardublock/block/dfrobot/sen0017.jpg</FileLocation> 1584 </Image> 1585 </Images> 1586 </BlockGenus> 1587 1588 <BlockGenus name="df_digital_push_button" kind="data" 1589 color="255 102 0" initlabel="bg.df_digital_push_button"> 1590 <BlockConnectors> 1591 <BlockConnector connector-type="boolean" 1592 connector-kind="plug" /> 1593 <BlockConnector connector-type="number" 1594 connector-kind="socket" label="bc.pin_number"> 1595 <DefaultArg genus-name="number" label="1" /> 1596 </BlockConnector> 1597 </BlockConnectors> 1598 <Images> 1599 <Image> 1600 <FileLocation>com/ardublock/block/dfrobot/dfr0029.png</FileLocation> 1601 </Image> 1602 </Images> 1603 </BlockGenus> 1604 1605 <BlockGenus name="df_joystick_module_button" kind="data" 1606 color="255 102 0" initlabel="bg.df_joystick_module_button"> 1607 <BlockConnectors> 1608 <BlockConnector connector-type="boolean" 1609 connector-kind="plug" /> 1610 <BlockConnector connector-type="number" 1611 connector-kind="socket" label="bc.pin_number"> 1612 <DefaultArg genus-name="number" label="1" /> 1613 </BlockConnector> 1614 </BlockConnectors> 1615 <Images> 1616 <Image> 1617 <FileLocation>com/ardublock/block/dfrobot/dfr0061.png</FileLocation> 1618 </Image> 1619 </Images> 1620 </BlockGenus> 1621 1622 <BlockGenus name="df_capacitive_touch_sensor" kind="data" 1623 color="255 102 0" initlabel="bg.df_capacitive_touch_sensor"> 1624 <BlockConnectors> 1625 <BlockConnector connector-type="boolean" 1626 connector-kind="plug" /> 1627 <BlockConnector connector-type="number" 1628 connector-kind="socket" label="bc.pin_number"> 1629 <DefaultArg genus-name="number" label="1" /> 1630 </BlockConnector> 1631 </BlockConnectors> 1632 <Images> 1633 <Image> 1634 <FileLocation>com/ardublock/block/dfrobot/dfr0030.png</FileLocation> 1635 </Image> 1636 </Images> 1637 </BlockGenus> 1638 1639 <BlockGenus name="df_digital_magnetic_sensor" kind="data" 1640 color="255 102 0" initlabel="bg.df_digital_magnetic_sensor"> 1641 <BlockConnectors> 1642 <BlockConnector connector-type="boolean" 1643 connector-kind="plug" /> 1644 <BlockConnector connector-type="number" 1645 connector-kind="socket" label="bc.pin_number"> 1646 <DefaultArg genus-name="number" label="1" /> 1647 </BlockConnector> 1648 </BlockConnectors> 1649 <Images> 1650 <Image> 1651 <FileLocation>com/ardublock/block/dfrobot/dfr0033.png</FileLocation> 1652 </Image> 1653 </Images> 1654 </BlockGenus> 1655 1656 1657 <BlockGenus name="df_pizeo_disk_vibration_sensor" kind="data" 1658 color="255 102 0" initlabel="bg.df_pizeo_disk_vibration_sensor"> 1659 <description> 1660 <text>Vibration Sensor buffers a piezoelectric transducer that 1661 responds to strain changes by generating a measurable output 1662 voltage change which is proportional to the strength of vibration. 1663 </text> 1664 </description> 1665 <BlockConnectors> 1666 <BlockConnector connector-type="number" 1667 connector-kind="socket" label="bc.pin_number"> 1668 <DefaultArg genus-name="number" label="1" /> 1669 </BlockConnector> 1670 <BlockConnector connector-type="number" 1671 connector-kind="plug" /> 1672 </BlockConnectors> 1673 <Images> 1674 <Image> 1675 <FileLocation>com/ardublock/block/dfrobot/dfr0052.png</FileLocation> 1676 </Image> 1677 </Images> 1678 </BlockGenus> 1679 <BlockGenus name="df_analog_ambient_light_sensor" kind="data" 1680 color="255 102 0" initlabel="bg.df_analog_ambient_light_sensor"> 1681 <description> 1682 <text>The ambient light sensor detects light density. </text> 1683 </description> 1684 <BlockConnectors> 1685 <BlockConnector connector-type="number" 1686 connector-kind="socket" label="bc.pin_number"> 1687 <DefaultArg genus-name="number" label="1" /> 1688 </BlockConnector> 1689 <BlockConnector connector-type="number" 1690 connector-kind="plug" /> 1691 </BlockConnectors> 1692 <Images> 1693 <Image> 1694 <FileLocation>com/ardublock/block/dfrobot/dfr0026.png</FileLocation> 1695 </Image> 1696 </Images> 1697 </BlockGenus> 1698 <BlockGenus name="df_analog_grayscale_sensor" kind="data" 1699 color="255 102 0" initlabel="bg.df_analog_grayscale_sensor"> 1700 <description> 1701 <text>Analog Grayscale Sensor detect the grayscale.</text> 1702 </description> 1703 <BlockConnectors> 1704 <BlockConnector connector-type="number" 1705 connector-kind="socket" label="bc.pin_number"> 1706 <DefaultArg genus-name="number" label="1" /> 1707 </BlockConnector> 1708 <BlockConnector connector-type="number" 1709 connector-kind="plug" /> 1710 </BlockConnectors> 1711 <Images> 1712 <Image> 1713 <FileLocation>com/ardublock/block/dfrobot/dfr0022.png</FileLocation> 1714 </Image> 1715 </Images> 1716 </BlockGenus> 1717 <BlockGenus name="df_flame_sensor" kind="data" color="255 102 0" 1718 initlabel="bg.df_flame_sensor"> 1719 <description> 1720 <text>Read analog value from pin</text> 1721 </description> 1722 <BlockConnectors> 1723 <BlockConnector connector-type="number" 1724 connector-kind="socket" label="bc.pin_number"> 1725 <DefaultArg genus-name="number" label="1" /> 1726 </BlockConnector> 1727 <BlockConnector connector-type="number" 1728 connector-kind="plug" /> 1729 </BlockConnectors> 1730 <Images> 1731 <Image> 1732 <FileLocation>com/ardublock/block/dfrobot/dfr0076.png</FileLocation> 1733 </Image> 1734 </Images> 1735 </BlockGenus> 1736 1737 <BlockGenus name="df_analog_mma7361_x" kind="data" color="255 102 0" 1738 initlabel="bg.df_analog_mma7361_x"> 1739 <description> 1740 <text>Read analog value from pin</text> 1741 </description> 1742 <BlockConnectors> 1743 <BlockConnector connector-type="number" 1744 connector-kind="socket" label="bc.pin_number"> 1745 <DefaultArg genus-name="number" label="1" /> 1746 </BlockConnector> 1747 <BlockConnector connector-type="number" 1748 connector-kind="plug" /> 1749 </BlockConnectors> 1750 <Images> 1751 <Image> 1752 <FileLocation>com/ardublock/block/dfrobot/dfr0143.png</FileLocation> 1753 </Image> 1754 </Images> 1755 </BlockGenus> 1756 1757 <BlockGenus name="df_analog_mma7361_y" kind="data" color="255 102 0" 1758 initlabel="bg.df_analog_mma7361_y"> 1759 <description> 1760 <text>Read analog value from pin</text> 1761 </description> 1762 <BlockConnectors> 1763 <BlockConnector connector-type="number" 1764 connector-kind="socket" label="bc.pin_number"> 1765 <DefaultArg genus-name="number" label="1" /> 1766 </BlockConnector> 1767 <BlockConnector connector-type="number" 1768 connector-kind="plug" /> 1769 </BlockConnectors> 1770 <Images> 1771 <Image> 1772 <FileLocation>com/ardublock/block/dfrobot/dfr0143.png</FileLocation> 1773 </Image> 1774 </Images> 1775 </BlockGenus> 1776 1777 1778 <BlockGenus name="df_analog_mma7361_z" kind="data" color="255 102 0" 1779 initlabel="bg.df_analog_mma7361_z"> 1780 <description> 1781 <text>Read analog value from pin</text> 1782 </description> 1783 <BlockConnectors> 1784 <BlockConnector connector-type="number" 1785 connector-kind="socket" label="bc.pin_number"> 1786 <DefaultArg genus-name="number" label="1" /> 1787 </BlockConnector> 1788 <BlockConnector connector-type="number" 1789 connector-kind="plug" /> 1790 </BlockConnectors> 1791 <Images> 1792 <Image> 1793 <FileLocation>com/ardublock/block/dfrobot/dfr0143.png</FileLocation> 1794 </Image> 1795 </Images> 1796 </BlockGenus> 1797 1798 <BlockGenus name="df_analog_gp2y0a21" kind="data" color="255 102 0" 1799 initlabel="bg.df_analog_gp2y0a21"> 1800 <description> 1801 <text>Read analog value from pin</text> 1802 </description> 1803 <BlockConnectors> 1804 <BlockConnector connector-type="number" 1805 connector-kind="socket" label="bc.pin_number"> 1806 <DefaultArg genus-name="number" label="1" /> 1807 </BlockConnector> 1808 <BlockConnector connector-type="number" 1809 connector-kind="plug" /> 1810 </BlockConnectors> 1811 <Images> 1812 <Image> 1813 <FileLocation>com/ardublock/block/dfrobot/sen0014.png</FileLocation> 1814 </Image> 1815 </Images> 1816 </BlockGenus> 1817 1818 <BlockGenus name="df_analog_moisture" kind="data" color="255 102 0" 1819 initlabel="bg.df_analog_moisture"> 1820 <description> 1821 <text>Read analog value from pin</text> 1822 </description> 1823 <BlockConnectors> 1824 <BlockConnector connector-type="number" 1825 connector-kind="socket" label="bc.pin_number"> 1826 <DefaultArg genus-name="number" label="1" /> 1827 </BlockConnector> 1828 <BlockConnector connector-type="number" 1829 connector-kind="plug" /> 1830 </BlockConnectors> 1831 <Images> 1832 <Image> 1833 <FileLocation>com/ardublock/block/dfrobot/sen0114.png</FileLocation> 1834 </Image> 1835 </Images> 1836 </BlockGenus> 1837 1838 1839 <BlockGenus name="df_temperature_sensor" kind="data" color="255 102 0" 1840 initlabel="bg.df_temperature_sensor"> 1841 <description> 1842 <text>Read analog value from pin</text> 1843 </description> 1844 <BlockConnectors> 1845 <BlockConnector connector-type="number" 1846 connector-kind="socket" label="bc.pin_number"> 1847 <DefaultArg genus-name="number" label="1" /> 1848 </BlockConnector> 1849 <BlockConnector connector-type="number" 1850 connector-kind="plug" /> 1851 </BlockConnectors> 1852 <Images> 1853 <Image> 1854 <FileLocation>com/ardublock/block/dfrobot/dfr0023.png</FileLocation> 1855 </Image> 1856 </Images> 1857 </BlockGenus> 1858 <BlockGenus name="df_joystick_module_x" kind="data" color="255 102 0" 1859 initlabel="bg.df_joystick_module_x"> 1860 <description> 1861 <text>Read analog value from pin</text> 1862 </description> 1863 <BlockConnectors> 1864 <BlockConnector connector-type="number" 1865 connector-kind="socket" label="bc.pin_number"> 1866 <DefaultArg genus-name="number" label="1" /> 1867 </BlockConnector> 1868 <BlockConnector connector-type="number" 1869 connector-kind="plug" /> 1870 </BlockConnectors> 1871 <Images> 1872 <Image> 1873 <FileLocation>com/ardublock/block/dfrobot/dfr0061.png</FileLocation> 1874 </Image> 1875 </Images> 1876 </BlockGenus> 1877 <BlockGenus name="df_joystick_module_y" kind="data" color="255 102 0" 1878 initlabel="bg.df_joystick_module_y"> 1879 <description> 1880 <text>Read analog value from pin</text> 1881 </description> 1882 <BlockConnectors> 1883 <BlockConnector connector-type="number" 1884 connector-kind="socket" label="bc.pin_number"> 1885 <DefaultArg genus-name="number" label="1" /> 1886 </BlockConnector> 1887 <BlockConnector connector-type="number" 1888 connector-kind="plug" /> 1889 </BlockConnectors> 1890 <Images> 1891 <Image> 1892 <FileLocation>com/ardublock/block/dfrobot/dfr0061.png</FileLocation> 1893 </Image> 1894 </Images> 1895 </BlockGenus> 1896 <BlockGenus name="df_mma7260_x" kind="data" color="255 102 0" 1897 initlabel="bg.df_mma7260_x"> 1898 <description> 1899 <text>Read analog value from pin</text> 1900 </description> 1901 <BlockConnectors> 1902 <BlockConnector connector-type="number" 1903 connector-kind="socket" label="bc.pin_number"> 1904 <DefaultArg genus-name="number" label="1" /> 1905 </BlockConnector> 1906 <BlockConnector connector-type="number" 1907 connector-kind="plug" /> 1908 </BlockConnectors> 1909 <Images> 1910 <Image> 1911 <FileLocation>com/ardublock/block/dfrobot/dfr0068.jpg</FileLocation> 1912 </Image> 1913 </Images> 1914 </BlockGenus> 1915 <BlockGenus name="df_mma7260_y" kind="data" color="255 102 0" 1916 initlabel="bg.df_mma7260_y"> 1917 <description> 1918 <text>Read analog value from pin</text> 1919 </description> 1920 <BlockConnectors> 1921 <BlockConnector connector-type="number" 1922 connector-kind="socket" label="bc.pin_number"> 1923 <DefaultArg genus-name="number" label="1" /> 1924 </BlockConnector> 1925 <BlockConnector connector-type="number" 1926 connector-kind="plug" /> 1927 </BlockConnectors> 1928 <Images> 1929 <Image> 1930 <FileLocation>com/ardublock/block/dfrobot/dfr0068.jpg</FileLocation> 1931 </Image> 1932 </Images> 1933 </BlockGenus> 1934 <BlockGenus name="df_mma7260_z" kind="data" color="255 102 0" 1935 initlabel="bg.df_mma7260_z"> 1936 <description> 1937 <text>Read analog value from pin</text> 1938 </description> 1939 <BlockConnectors> 1940 <BlockConnector connector-type="number" 1941 connector-kind="socket" label="bc.pin_number"> 1942 <DefaultArg genus-name="number" label="1" /> 1943 </BlockConnector> 1944 <BlockConnector connector-type="number" 1945 connector-kind="plug" /> 1946 </BlockConnectors> 1947 <Images> 1948 <Image> 1949 <FileLocation>com/ardublock/block/dfrobot/dfr0068.jpg</FileLocation> 1950 </Image> 1951 </Images> 1952 </BlockGenus> 1953 <BlockGenus name="df_analog_rotation_sensor_v1" kind="data" 1954 color="255 102 0" initlabel="bg.df_analog_rotation_sensor_v1"> 1955 <description> 1956 <text>Read analog value from pin</text> 1957 </description> 1958 <BlockConnectors> 1959 <BlockConnector connector-type="number" 1960 connector-kind="socket" label="bc.pin_number"> 1961 <DefaultArg genus-name="number" label="1" /> 1962 </BlockConnector> 1963 <BlockConnector connector-type="number" 1964 connector-kind="plug" /> 1965 </BlockConnectors> 1966 <Images> 1967 <Image> 1968 <FileLocation>com/ardublock/block/dfrobot/dfr0054.jpg</FileLocation> 1969 </Image> 1970 </Images> 1971 </BlockGenus> 1972 <BlockGenus name="df_analog_rotation_sensor_v2" kind="data" 1973 color="255 102 0" initlabel="bg.df_analog_rotation_sensor_v2"> 1974 <description> 1975 <text>Read analog value from pin</text> 1976 </description> 1977 <BlockConnectors> 1978 <BlockConnector connector-type="number" 1979 connector-kind="socket" label="bc.pin_number"> 1980 <DefaultArg genus-name="number" label="1" /> 1981 </BlockConnector> 1982 <BlockConnector connector-type="number" 1983 connector-kind="plug" /> 1984 </BlockConnectors> 1985 <Images> 1986 <Image> 1987 <FileLocation>com/ardublock/block/dfrobot/dfr0058.png</FileLocation> 1988 </Image> 1989 </Images> 1990 </BlockGenus> 1991 <BlockGenus name="df_analog_sound_sensor" kind="data" 1992 color="255 102 0" initlabel="bg.df_analog_sound_sensor"> 1993 <description> 1994 <text>Read analog value from pin</text> 1995 </description> 1996 <BlockConnectors> 1997 <BlockConnector connector-type="number" 1998 connector-kind="socket" label="bc.pin_number"> 1999 <DefaultArg genus-name="number" label="1" /> 2000 </BlockConnector> 2001 <BlockConnector connector-type="number" 2002 connector-kind="plug" /> 2003 </BlockConnectors> 2004 <Images> 2005 <Image> 2006 <FileLocation>com/ardublock/block/dfrobot/dfr0034.png</FileLocation> 2007 </Image> 2008 </Images> 2009 </BlockGenus> 2010 2011 <BlockGenus name="df_analog_gas_sensor" kind="data" color="255 102 0" 2012 initlabel="bg.df_analog_gas_sensor"> 2013 <description> 2014 <text>Read analog value from pin</text> 2015 </description> 2016 <BlockConnectors> 2017 <BlockConnector connector-type="number" 2018 connector-kind="socket" label="bc.pin_number"> 2019 <DefaultArg genus-name="number" label="1" /> 2020 </BlockConnector> 2021 <BlockConnector connector-type="number" 2022 connector-kind="plug" /> 2023 </BlockConnectors> 2024 <Images> 2025 <Image> 2026 <FileLocation>com/ardublock/block/dfrobot/dfr0049.jpg</FileLocation> 2027 </Image> 2028 </Images> 2029 </BlockGenus> 2030 2031 2032 <BlockGenus name="df_analog_co_sensor" kind="data" color="255 102 0" 2033 initlabel="bg.df_analog_co_sensor"> 2034 <description> 2035 <text>Read analog value from pin</text> 2036 </description> 2037 <BlockConnectors> 2038 <BlockConnector connector-type="number" 2039 connector-kind="socket" label="bc.pin_number"> 2040 <DefaultArg genus-name="number" label="1" /> 2041 </BlockConnector> 2042 <BlockConnector connector-type="number" 2043 connector-kind="plug" /> 2044 </BlockConnectors> 2045 <Images> 2046 <Image> 2047 <FileLocation>com/ardublock/block/dfrobot/sen0132.png</FileLocation> 2048 </Image> 2049 </Images> 2050 </BlockGenus> 2051 2052 <BlockGenus name="df_analog_voltage_divider" kind="data" color="255 102 0" 2053 initlabel="bg.df_analog_voltage_divider"> 2054 <description> 2055 <text>Read analog value from pin</text> 2056 </description> 2057 <BlockConnectors> 2058 <BlockConnector connector-type="number" 2059 connector-kind="socket" label="bc.pin_number"> 2060 <DefaultArg genus-name="number" label="1" /> 2061 </BlockConnector> 2062 <BlockConnector connector-type="number" 2063 connector-kind="plug" /> 2064 </BlockConnectors> 2065 <Images> 2066 <Image> 2067 <FileLocation>com/ardublock/block/dfrobot/dfr0051.png</FileLocation> 2068 </Image> 2069 </Images> 2070 </BlockGenus> 2071 2072 <BlockGenus name="df_servo" kind="command" color="255 102 0" 2073 initlabel="bg.df_servo"> 2074 <description> 2075 <text>set a pin to pwm</text> 2076 </description> 2077 <BlockConnectors> 2078 <BlockConnector connector-type="number" 2079 connector-kind="socket" label="bc.pin_number"> 2080 <DefaultArg genus-name="number" label="1" /> 2081 </BlockConnector> 2082 <BlockConnector connector-type="number" 2083 connector-kind="socket" label="bc.angle"> 2084 <DefaultArg genus-name="number" label="1" /> 2085 </BlockConnector> 2086 </BlockConnectors> 2087 <Images> 2088 <Image> 2089 <FileLocation>com/ardublock/block/dfrobot/ser0017.jpg</FileLocation> 2090 </Image> 2091 </Images> 2092 </BlockGenus> 2093 2094 <BlockGenus name="df_360_degree_rotation_motor" kind="command" 2095 color="255 102 0" initlabel="bg.df_360_degree_rotation_motor"> 2096 <description> 2097 <text>set a pin to pwm</text> 2098 </description> 2099 <BlockConnectors> 2100 <BlockConnector connector-type="number" 2101 connector-kind="socket" label="bc.pin_number"> 2102 <DefaultArg genus-name="number" label="1" /> 2103 </BlockConnector> 2104 <BlockConnector connector-type="number" 2105 connector-kind="socket" label="bc.angle"> 2106 <DefaultArg genus-name="number" label="1" /> 2107 </BlockConnector> 2108 </BlockConnectors> 2109 <Images> 2110 <Image> 2111 <FileLocation>com/ardublock/block/dfrobot/ser0017.jpg</FileLocation> 2112 </Image> 2113 </Images> 2114 </BlockGenus> 2115 2116 <BlockGenus name="df_led" kind="command" color="255 102 0" 2117 initlabel="bg.df_led"> 2118 <description> 2119 <text>DFRobot LED Module</text> 2120 </description> 2121 <BlockConnectors> 2122 <BlockConnector connector-type="number" 2123 connector-kind="socket" label="bc.pin_number"> 2124 <DefaultArg genus-name="number" label="1" /> 2125 </BlockConnector> 2126 <BlockConnector connector-type="boolean" 2127 connector-kind="socket" label="bc.status"> 2128 <DefaultArg genus-name="digital-on" label="ON" /> 2129 </BlockConnector> 2130 </BlockConnectors> 2131 <Images> 2132 <Image> 2133 <FileLocation>com/ardublock/block/dfrobot/dfr0021.png</FileLocation> 2134 </Image> 2135 </Images> 2136 </BlockGenus> 2137 2138 <BlockGenus name="df_led_pwm" kind="command" color="255 102 0" 2139 initlabel="bg.df_led_pwm"> 2140 <description> 2141 <text>DFRobot LED Module</text> 2142 </description> 2143 <BlockConnectors> 2144 <BlockConnector connector-type="number" 2145 connector-kind="socket" label="bc.pin_number"> 2146 <DefaultArg genus-name="number" label="1" /> 2147 </BlockConnector> 2148 <BlockConnector connector-type="number" 2149 connector-kind="socket" label="bc.level"> 2150 <DefaultArg genus-name="number" label="255" /> 2151 </BlockConnector> 2152 </BlockConnectors> 2153 <Images> 2154 <Image> 2155 <FileLocation>com/ardublock/block/dfrobot/dfr0021.png</FileLocation> 2156 </Image> 2157 </Images> 2158 </BlockGenus> 2159 2160 <BlockGenus name="df_piranha_led" kind="command" color="255 102 0" 2161 initlabel="bg.df_piranha_led"> 2162 <description> 2163 <text>DFRobot piranha LED Module</text> 2164 </description> 2165 <BlockConnectors> 2166 <BlockConnector connector-type="number" 2167 connector-kind="socket" label="bc.pin_number"> 2168 <DefaultArg genus-name="number" label="1" /> 2169 </BlockConnector> 2170 <BlockConnector connector-type="boolean" 2171 connector-kind="socket" label="bc.status"> 2172 <DefaultArg genus-name="digital-on" label="ON" /> 2173 </BlockConnector> 2174 </BlockConnectors> 2175 <Images> 2176 <Image> 2177 <FileLocation>com/ardublock/block/dfrobot/dfr0031.jpg</FileLocation> 2178 </Image> 2179 </Images> 2180 </BlockGenus> 2181 2182 <BlockGenus name="df_piranha_led_pwm" kind="command" color="255 102 0" 2183 initlabel="bg.df_piranha_led_pwm"> 2184 <description> 2185 <text>DFRobot pianha LED Module with brightnes level</text> 2186 </description> 2187 <BlockConnectors> 2188 <BlockConnector connector-type="number" 2189 connector-kind="socket" label="bc.pin_number"> 2190 <DefaultArg genus-name="number" label="1" /> 2191 </BlockConnector> 2192 <BlockConnector connector-type="number" 2193 connector-kind="socket" label="bc.level"> 2194 <DefaultArg genus-name="number" label="255" /> 2195 </BlockConnector> 2196 </BlockConnectors> 2197 <Images> 2198 <Image> 2199 <FileLocation>com/ardublock/block/dfrobot/dfr0031.jpg</FileLocation> 2200 </Image> 2201 </Images> 2202 </BlockGenus> 2203 2204 <BlockGenus name="df_relay" kind="command" color="255 102 0" 2205 initlabel="bg.df_relay"> 2206 <description> 2207 <text>Dfrobot Relay Module</text> 2208 </description> 2209 <BlockConnectors> 2210 <BlockConnector connector-type="number" 2211 connector-kind="socket" label="bc.pin_number"> 2212 <DefaultArg genus-name="number" label="1" /> 2213 </BlockConnector> 2214 <BlockConnector connector-type="boolean" 2215 connector-kind="socket" label="bc.status"> 2216 <DefaultArg genus-name="digital-high" label="HIGH" /> 2217 </BlockConnector> 2218 </BlockConnectors> 2219 <Images> 2220 <Image> 2221 <FileLocation>com/ardublock/block/dfrobot/dfr0017.png</FileLocation> 2222 </Image> 2223 </Images> 2224 </BlockGenus> 2225 2226 <BlockGenus name="df_buzzer" kind="command" color="255 102 0" 2227 initlabel="bg.df_buzzer"> 2228 <description> 2229 <text>DFRobot buzzer Module</text> 2230 </description> 2231 <BlockConnectors> 2232 <BlockConnector connector-type="number" 2233 connector-kind="socket" label="bc.pin_number"> 2234 <DefaultArg genus-name="number" label="1" /> 2235 </BlockConnector> 2236 <BlockConnector connector-type="boolean" 2237 connector-kind="socket" label="bc.status"> 2238 <DefaultArg genus-name="digital-on" label="ON" /> 2239 </BlockConnector> 2240 </BlockConnectors> 2241 <Images> 2242 <Image> 2243 <FileLocation>com/ardublock/block/dfrobot/dfr0032.png</FileLocation> 2244 </Image> 2245 </Images> 2246 </BlockGenus> 2247 2248 <BlockGenus name="df_buzzer_tone" kind="command" color="255 102 0" 2249 initlabel="bg.df_buzzer"> 2250 <description> 2251 <text>Generates a square wave of the specified frequency (and 50% 2252 duty cycle) on a pin. 2253 </text> 2254 </description> 2255 <BlockConnectors> 2256 <BlockConnector connector-type="number" 2257 connector-kind="socket" label="bc.pin_number"> 2258 <DefaultArg genus-name="number" label="8" /> 2259 </BlockConnector> 2260 <BlockConnector connector-type="number" 2261 connector-kind="socket" label="bc.frequency"> 2262 <DefaultArg genus-name="number" label="440" /> 2263 </BlockConnector> 2264 2265 </BlockConnectors> 2266 <Images> 2267 <Image> 2268 <FileLocation>com/ardublock/block/dfrobot/dfr0032.png</FileLocation> 2269 </Image> 2270 </Images> 2271 </BlockGenus> 2272 2273 <BlockGenus name="df_buzzer_tone_delay" kind="command" 2274 color="255 102 0" initlabel="bg.df_buzzer"> 2275 <description> 2276 <text>Generates a square wave of the specified frequency (and 50% 2277 duty cycle) on a pin. 2278 </text> 2279 </description> 2280 <BlockConnectors> 2281 <BlockConnector connector-type="number" 2282 connector-kind="socket" label="bc.pin_number"> 2283 <DefaultArg genus-name="number" label="8" /> 2284 </BlockConnector> 2285 <BlockConnector connector-type="number" 2286 connector-kind="socket" label="bc.frequency"> 2287 <DefaultArg genus-name="number" label="440" /> 2288 </BlockConnector> 2289 <BlockConnector connector-type="number" 2290 connector-kind="socket" label="bc.milliseconds"> 2291 <DefaultArg genus-name="number" label="1000" /> 2292 </BlockConnector> 2293 </BlockConnectors> 2294 <Images> 2295 <Image> 2296 <FileLocation>com/ardublock/block/dfrobot/dfr0032.png</FileLocation> 2297 </Image> 2298 </Images> 2299 </BlockGenus> 2300 2301 <!-- seeedstudio grove --> 2302 2303 <BlockGenus name="seeed_joystick" kind="data" color="0 255 0" 2304 initlabel="bg.seeed_joystick"> 2305 <description> 2306 <text>Read analog value from analog pin</text> 2307 </description> 2308 <BlockConnectors> 2309 <BlockConnector connector-type="number" 2310 connector-kind="socket"> 2311 <DefaultArg genus-name="number" label="1" /> 2312 </BlockConnector> 2313 <BlockConnector connector-type="number" 2314 connector-kind="plug" /> 2315 </BlockConnectors> 2316 <Images> 2317 <Image> 2318 <FileLocation>com/ardublock/block/seeedstudio/COM90133P.jpg</FileLocation> 2319 </Image> 2320 </Images> 2321 </BlockGenus> 2322 2323 <BlockGenus name="seeed_joystick_button" kind="data" color="0 255 0" 2324 initlabel="bg.seeed_joystick_button"> 2325 <description> 2326 <text>Read analog value from analog pin</text> 2327 </description> 2328 <BlockConnectors> 2329 <BlockConnector connector-type="number" 2330 connector-kind="socket"> 2331 <DefaultArg genus-name="number" label="1" /> 2332 </BlockConnector> 2333 <BlockConnector connector-type="boolean" 2334 connector-kind="plug" /> 2335 </BlockConnectors> 2336 <Images> 2337 <Image> 2338 <FileLocation>com/ardublock/block/seeedstudio/COM90133P.jpg</FileLocation> 2339 </Image> 2340 </Images> 2341 </BlockGenus> 2342 2343 <!--************************************************************* linksprite_LinkerKit*******************************************************--> 2344 2345 <BlockGenus name="ls_10mmLEDModule" kind="command" color="135 206 235" 2346 initlabel="bg.ls_10mmLEDModule"> 2347 <description> 2348 <text>10mm Blue/Green/Yellow/Red LED Module</text> 2349 </description> 2350 <BlockConnectors> 2351 <BlockConnector connector-type="number" 2352 connector-kind="socket" label="bc.pin_number"> 2353 <DefaultArg genus-name="number" label="1" /> 2354 </BlockConnector> 2355 <BlockConnector connector-type="boolean" 2356 connector-kind="socket" label="bc.status"> 2357 <DefaultArg genus-name="digital-on" label="ON" /> 2358 </BlockConnector> 2359 </BlockConnectors> 2360 <Images> 2361 <Image> 2362 <FileLocation>com/ardublock/block/linksprite/10mmLEDModule.jpg</FileLocation> 2363 </Image> 2364 </Images> 2365 </BlockGenus> 2366 2367 <BlockGenus name="ls_5mmLEDModule" kind="command" color="135 206 235" 2368 initlabel="bg.ls_5mmLEDModule"> 2369 <description> 2370 <text>5mm Blue/Green/Yellow/Red LED Module</text> 2371 </description> 2372 <BlockConnectors> 2373 <BlockConnector connector-type="number" 2374 connector-kind="socket" label="bc.pin_number"> 2375 <DefaultArg genus-name="number" label="1" /> 2376 </BlockConnector> 2377 <BlockConnector connector-type="boolean" 2378 connector-kind="socket" label="bc.status"> 2379 <DefaultArg genus-name="digital-on" label="ON" /> 2380 </BlockConnector> 2381 </BlockConnectors> 2382 <Images> 2383 <Image> 2384 <FileLocation>com/ardublock/block/linksprite/5mmLEDModule.jpg</FileLocation> 2385 </Image> 2386 </Images> 2387 </BlockGenus> 2388 2389 <BlockGenus name="ls_AccelerometerModule_x" kind="data" color="135 206 235" 2390 initlabel="bg.ls_AccelerometerModule_x"> 2391 <description> 2392 <text>Based on the excellent ADXL-345, this digital 3-axis accelerometer has excellent EMI protection.</text> 2393 </description> 2394 <BlockConnectors> 2395 <BlockConnector connector-type="boolean" 2396 connector-kind="plug" /> 2397 <BlockConnector connector-type="number" 2398 connector-kind="socket" label="bc.pin_number"> 2399 <DefaultArg genus-name="number" label="1" /> 2400 </BlockConnector> 2401 </BlockConnectors> 2402 <Images> 2403 <Image> 2404 <FileLocation>com/ardublock/block/linksprite/AccelerometerModule.jpg</FileLocation> 2405 </Image> 2406 </Images> 2407 </BlockGenus> 2408 2409 <BlockGenus name="ls_AccelerometerModule_y" kind="data" color="135 206 235" 2410 initlabel="bg.ls_AccelerometerModule_y"> 2411 <description> 2412 <text>Based on the excellent ADXL-345, this digital 3-axis accelerometer has excellent EMI protection.</text> 2413 </description> 2414 <BlockConnectors> 2415 <BlockConnector connector-type="boolean" 2416 connector-kind="plug" /> 2417 <BlockConnector connector-type="number" 2418 connector-kind="socket" label="bc.pin_number"> 2419 <DefaultArg genus-name="number" label="1" /> 2420 </BlockConnector> 2421 </BlockConnectors> 2422 <Images> 2423 <Image> 2424 <FileLocation>com/ardublock/block/linksprite/AccelerometerModule.jpg</FileLocation> 2425 </Image> 2426 </Images> 2427 </BlockGenus> 2428 2429 <BlockGenus name="ls_AccelerometerModule_z" kind="data" color="135 206 235" 2430 initlabel="bg.ls_AccelerometerModule_z"> 2431 <description> 2432 <text>Based on the excellent ADXL-345, this digital 3-axis accelerometer has excellent EMI protection.</text> 2433 </description> 2434 <BlockConnectors> 2435 <BlockConnector connector-type="boolean" 2436 connector-kind="plug" /> 2437 <BlockConnector connector-type="number" 2438 connector-kind="socket" label="bc.pin_number"> 2439 <DefaultArg genus-name="number" label="1" /> 2440 </BlockConnector> 2441 </BlockConnectors> 2442 <Images> 2443 <Image> 2444 <FileLocation>com/ardublock/block/linksprite/AccelerometerModule.jpg</FileLocation> 2445 </Image> 2446 </Images> 2447 </BlockGenus> 2448 2449 <BlockGenus name="ls_ButtonModule" kind="data" color="135 206 235" 2450 initlabel="bg.ls_ButtonModule"> 2451 <description> 2452 <text>Button Module</text> 2453 </description> 2454 <BlockConnectors> 2455 <BlockConnector connector-type="boolean" 2456 connector-kind="plug" /> 2457 <BlockConnector connector-type="number" 2458 connector-kind="socket" label="bc.pin_number"> 2459 <DefaultArg genus-name="number" label="1" /> 2460 </BlockConnector> 2461 </BlockConnectors> 2462 <Images> 2463 <Image> 2464 <FileLocation>com/ardublock/block/linksprite/ButtonModule.jpg</FileLocation> 2465 </Image> 2466 </Images> 2467 </BlockGenus> 2468 2469 <BlockGenus name="ls_BuzzerModule" kind="command" color="135 206 235" 2470 initlabel="bg.ls_BuzzerModule"> 2471 <description> 2472 <text>Buzzer Module</text> 2473 </description> 2474 <BlockConnectors> 2475 <BlockConnector connector-type="number" 2476 connector-kind="socket" label="bc.pin_number"> 2477 <DefaultArg genus-name="number" label="1" /> 2478 </BlockConnector> 2479 <BlockConnector connector-type="boolean" 2480 connector-kind="socket" label="bc.status"> 2481 <DefaultArg genus-name="digital-on" label="ON" /> 2482 </BlockConnector> 2483 </BlockConnectors> 2484 <Images> 2485 <Image> 2486 <FileLocation>com/ardublock/block/linksprite/BuzzerModule.jpg</FileLocation> 2487 </Image> 2488 </Images> 2489 </BlockGenus> 2490 2491 <BlockGenus name="ls_HallSensor" kind="data" color="135 206 235" 2492 initlabel="bg.ls_HallSensor"> 2493 <description> 2494 <text>Hall Sensor</text> 2495 </description> 2496 <BlockConnectors> 2497 <BlockConnector connector-type="number" 2498 connector-kind="plug" /> 2499 <BlockConnector connector-type="number" 2500 connector-kind="socket" label="bc.pin_number"> 2501 <DefaultArg genus-name="number" label="1" /> 2502 </BlockConnector> 2503 </BlockConnectors> 2504 <Images> 2505 <Image> 2506 <FileLocation>com/ardublock/block/linksprite/HallSensor.jpg</FileLocation> 2507 </Image> 2508 </Images> 2509 </BlockGenus> 2510 2511 <BlockGenus name="ls_HighPowerLedModule" kind="command" color="135 206 235" 2512 initlabel="bg.ls_HighPowerLedModule"> 2513 <description> 2514 <text>High Power Led Module</text> 2515 </description> 2516 <BlockConnectors> 2517 <BlockConnector connector-type="number" 2518 connector-kind="socket" label="bc.pin_number"> 2519 <DefaultArg genus-name="number" label="1" /> 2520 </BlockConnector> 2521 <BlockConnector connector-type="boolean" 2522 connector-kind="socket" label="bc.status"> 2523 <DefaultArg genus-name="digital-on" label="ON" /> 2524 </BlockConnector> 2525 </BlockConnectors> 2526 <Images> 2527 <Image> 2528 <FileLocation>com/ardublock/block/linksprite/HighPowerLedModule.jpg</FileLocation> 2529 </Image> 2530 </Images> 2531 </BlockGenus> 2532 2533 <BlockGenus name="ls_JoystickSensorModule_x" kind="data" color="135 206 235" 2534 initlabel="bg.ls_JoystickSensorModule_x"> 2535 <description> 2536 <text>Joystick Sensor Module</text> 2537 </description> 2538 <BlockConnectors> 2539 <BlockConnector connector-type="number" 2540 connector-kind="socket" label="bc.pin_number"> 2541 <DefaultArg genus-name="number" label="1" /> 2542 </BlockConnector> 2543 <BlockConnector connector-type="number" 2544 connector-kind="plug" /> 2545 </BlockConnectors> 2546 <Images> 2547 <Image> 2548 <FileLocation>com/ardublock/block/linksprite/JoystickSensorModule.jpg</FileLocation> 2549 </Image> 2550 </Images> 2551 </BlockGenus> 2552 2553 <BlockGenus name="ls_JoystickSensorModule_y" kind="data" color="135 206 235" 2554 initlabel="bg.ls_JoystickSensorModule_y"> 2555 <description> 2556 <text>Joystick Sensor Module</text> 2557 </description> 2558 <BlockConnectors> 2559 <BlockConnector connector-type="number" 2560 connector-kind="socket" label="bc.pin_number"> 2561 <DefaultArg genus-name="number" label="1" /> 2562 </BlockConnector> 2563 <BlockConnector connector-type="number" 2564 connector-kind="plug" /> 2565 </BlockConnectors> 2566 <Images> 2567 <Image> 2568 <FileLocation>com/ardublock/block/linksprite/JoystickSensorModule.jpg</FileLocation> 2569 </Image> 2570 </Images> 2571 </BlockGenus> 2572 2573 <BlockGenus name="ls_LDRModule" kind="data" color="135 206 235" 2574 initlabel="bg.ls_LDRModule"> 2575 <description> 2576 <text>LDR Module</text> 2577 </description> 2578 <BlockConnectors> 2579 <BlockConnector connector-type="number" 2580 connector-kind="plug" /> 2581 <BlockConnector connector-type="number" 2582 connector-kind="socket" label="bc.pin_number"> 2583 <DefaultArg genus-name="number" label="1" /> 2584 </BlockConnector> 2585 </BlockConnectors> 2586 <Images> 2587 <Image> 2588 <FileLocation>com/ardublock/block/linksprite/LDRModule.jpg</FileLocation> 2589 </Image> 2590 </Images> 2591 </BlockGenus> 2592 2593 <BlockGenus name="ls_LEDBar" kind="command" color="135 206 235" 2594 initlabel="bg.ls_LEDBar"> 2595 <description> 2596 <text>LED Bar</text> 2597 </description> 2598 <BlockConnectors> 2599 <BlockConnector connector-type="number" 2600 connector-kind="socket" label="bc.pin_number"> 2601 <DefaultArg genus-name="number" label="1" /> 2602 </BlockConnector> 2603 <BlockConnector connector-type="boolean" 2604 connector-kind="socket" label="bc.status"> 2605 <DefaultArg genus-name="digital-on" label="ON" /> 2606 </BlockConnector> 2607 </BlockConnectors> 2608 <Images> 2609 <Image> 2610 <FileLocation>com/ardublock/block/linksprite/LEDBarr.jpg</FileLocation> 2611 </Image> 2612 </Images> 2613 </BlockGenus> 2614 2615 <BlockGenus name="ls_Linear-SlidePotentiometerModule" kind="data" color="135 206 235" 2616 initlabel="bg.ls_Linear-SlidePotentiometerModule"> 2617 <description> 2618 <text>Linear/Slide Potentiometer Module</text> 2619 </description> 2620 <BlockConnectors> 2621 <BlockConnector connector-type="number" 2622 connector-kind="plug" /> 2623 <BlockConnector connector-type="number" 2624 connector-kind="socket" label="bc.pin_number"> 2625 <DefaultArg genus-name="number" label="1" /> 2626 </BlockConnector> 2627 </BlockConnectors> 2628 <Images> 2629 <Image> 2630 <FileLocation>com/ardublock/block/linksprite/Linear-SlidePotentiometerModule.jpg</FileLocation> 2631 </Image> 2632 </Images> 2633 </BlockGenus> 2634 2635 <BlockGenus name="ls_MagneticSwitch" kind="data" color="135 206 235" 2636 initlabel="bg.ls_MagneticSwitch"> 2637 <description> 2638 <text>Magnetic Switch</text> 2639 </description> 2640 <BlockConnectors> 2641 <BlockConnector connector-type="boolean" 2642 connector-kind="plug" /> 2643 <BlockConnector connector-type="number" 2644 connector-kind="socket" label="bc.pin_number"> 2645 <DefaultArg genus-name="number" label="1" /> 2646 </BlockConnector> 2647 </BlockConnectors> 2648 <Images> 2649 <Image> 2650 <FileLocation>com/ardublock/block/linksprite/MagneticSwitch.jpg</FileLocation> 2651 </Image> 2652 </Images> 2653 </BlockGenus> 2654 2655 <BlockGenus name="ls_MosfetModule" kind="command" color="135 206 235" 2656 initlabel="bg.ls_MosfetModule"> 2657 <description> 2658 <text>Mosfet Module</text> 2659 </description> 2660 <BlockConnectors> 2661 <BlockConnector connector-type="number" 2662 connector-kind="socket" label="bc.pin_number"> 2663 <DefaultArg genus-name="number" label="1" /> 2664 </BlockConnector> 2665 <BlockConnector connector-type="boolean" 2666 connector-kind="socket" label="bc.status"> 2667 <DefaultArg genus-name="digital-high" label="HIGH" /> 2668 </BlockConnector> 2669 </BlockConnectors> 2670 <Images> 2671 <Image> 2672 <FileLocation>com/ardublock/block/linksprite/MosfetModule.jpg</FileLocation> 2673 </Image> 2674 </Images> 2675 </BlockGenus> 2676 2677 <BlockGenus name="ls_RelayModule" kind="command" color="135 206 235" 2678 initlabel="bg.ls_RelayModule"> 2679 <description> 2680 <text>Relay Module</text> 2681 </description> 2682 <BlockConnectors> 2683 <BlockConnector connector-type="number" 2684 connector-kind="socket" label="bc.pin_number"> 2685 <DefaultArg genus-name="number" label="1" /> 2686 </BlockConnector> 2687 <BlockConnector connector-type="boolean" 2688 connector-kind="socket" label="bc.status"> 2689 <DefaultArg genus-name="digital-high" label="HIGH" /> 2690 </BlockConnector> 2691 </BlockConnectors> 2692 <Images> 2693 <Image> 2694 <FileLocation>com/ardublock/block/linksprite/RelayModule.jpg</FileLocation> 2695 </Image> 2696 </Images> 2697 </BlockGenus> 2698 2699 <BlockGenus name="ls_RotaryPotentiometerModule" kind="data" color="135 206 235" 2700 initlabel="bg.ls_RotaryPotentiometerModule"> 2701 <description> 2702 <text>Rotary Potentiometer Module</text> 2703 </description> 2704 <BlockConnectors> 2705 <BlockConnector connector-type="number" 2706 connector-kind="plug" /> 2707 <BlockConnector connector-type="number" 2708 connector-kind="socket" label="bc.pin_number"> 2709 <DefaultArg genus-name="number" label="1" /> 2710 </BlockConnector> 2711 </BlockConnectors> 2712 <Images> 2713 <Image> 2714 <FileLocation>com/ardublock/block/linksprite/RotaryPotentiometerModule.jpg</FileLocation> 2715 </Image> 2716 </Images> 2717 </BlockGenus> 2718 2719 <BlockGenus name="ls_RTCModule" kind="data" color="135 206 235" 2720 initlabel="bg.ls_RTCModule"> 2721 <description> 2722 <text>RTC Module</text> 2723 </description> 2724 <BlockConnectors> 2725 <BlockConnector connector-type="boolean" 2726 connector-kind="plug" /> 2727 <BlockConnector connector-type="number" 2728 connector-kind="socket" label="bc.pin_number"> 2729 <DefaultArg genus-name="number" label="1" /> 2730 </BlockConnector> 2731 </BlockConnectors> 2732 <Images> 2733 <Image> 2734 <FileLocation>com/ardublock/block/linksprite/RTCModule.jpg</FileLocation> 2735 </Image> 2736 </Images> 2737 </BlockGenus> 2738 2739 <BlockGenus name="ls_SoundSensor" kind="data" color="135 206 235" 2740 initlabel="bg.ls_SoundSensor"> 2741 <description> 2742 <text>Sound Sensor</text> 2743 </description> 2744 <BlockConnectors> 2745 <BlockConnector connector-type="number" 2746 connector-kind="socket" label="bc.pin_number"> 2747 <DefaultArg genus-name="number" label="1" /> 2748 </BlockConnector> 2749 <BlockConnector connector-type="number" 2750 connector-kind="plug" /> 2751 </BlockConnectors> 2752 <Images> 2753 <Image> 2754 <FileLocation>com/ardublock/block/linksprite/SoundSensor.jpg</FileLocation> 2755 </Image> 2756 </Images> 2757 </BlockGenus> 2758 2759 <BlockGenus name="ls_ThermalModule" kind="data" color="135 206 235" 2760 initlabel="bg.ls_ThermalModule"> 2761 <description> 2762 <text>Thermal Module</text> 2763 </description> 2764 <BlockConnectors> 2765 <BlockConnector connector-type="number" 2766 connector-kind="socket" label="bc.pin_number"> 2767 <DefaultArg genus-name="number" label="1" /> 2768 </BlockConnector> 2769 <BlockConnector connector-type="number" 2770 connector-kind="plug" /> 2771 </BlockConnectors> 2772 <Images> 2773 <Image> 2774 <FileLocation>com/ardublock/block/linksprite/ThermalModule.jpg</FileLocation> 2775 </Image> 2776 </Images> 2777 </BlockGenus> 2778 2779 <BlockGenus name="ls_TiltModule" kind="data" color="135 206 235" 2780 initlabel="bg.ls_TiltModule"> 2781 <description> 2782 <text>Tilt Module</text> 2783 </description> 2784 <BlockConnectors> 2785 <BlockConnector connector-type="boolean" 2786 connector-kind="plug" /> 2787 <BlockConnector connector-type="number" 2788 connector-kind="socket" label="bc.pin_number"> 2789 <DefaultArg genus-name="number" label="1" /> 2790 </BlockConnector> 2791 </BlockConnectors> 2792 <Images> 2793 <Image> 2794 <FileLocation>com/ardublock/block/linksprite/TiltModule.jpg</FileLocation> 2795 </Image> 2796 </Images> 2797 </BlockGenus> 2798 2799 <BlockGenus name="ls_TouchSensorModule" kind="data" color="135 206 235" 2800 initlabel="bg.ls_TouchSensorModule"> 2801 <description> 2802 <text>Touch Sensor Module</text> 2803 </description> 2804 <BlockConnectors> 2805 <BlockConnector connector-type="boolean" 2806 connector-kind="plug" /> 2807 <BlockConnector connector-type="number" 2808 connector-kind="socket" label="bc.pin_number"> 2809 <DefaultArg genus-name="number" label="1" /> 2810 </BlockConnector> 2811 </BlockConnectors> 2812 <Images> 2813 <Image> 2814 <FileLocation>com/ardublock/block/linksprite/TouchSensorModule.jpg</FileLocation> 2815 </Image> 2816 </Images> 2817 </BlockGenus> 2818 2819 </BlockGenuses> 2820 2821 <BlockFamilies> 2822 <BlockFamily> 2823 <FamilyMember>digital-high</FamilyMember> 2824 <FamilyMember>digital-low</FamilyMember> 2825 </BlockFamily> 2826 <BlockFamily> 2827 <FamilyMember>and</FamilyMember> 2828 <FamilyMember>or</FamilyMember> 2829 </BlockFamily> 2830 <BlockFamily> 2831 <FamilyMember>true</FamilyMember> 2832 <FamilyMember>false</FamilyMember> 2833 </BlockFamily> 2834 <BlockFamily> 2835 <FamilyMember>addition</FamilyMember> 2836 <FamilyMember>subtraction</FamilyMember> 2837 <FamilyMember>multiplication</FamilyMember> 2838 <FamilyMember>division</FamilyMember> 2839 <FamilyMember>modulo</FamilyMember> 2840 </BlockFamily> 2841 <BlockFamily> 2842 <FamilyMember>min</FamilyMember> 2843 <FamilyMember>max</FamilyMember> 2844 </BlockFamily> 2845 <BlockFamily> 2846 <FamilyMember>greater</FamilyMember> 2847 <FamilyMember>less</FamilyMember> 2848 <FamilyMember>equal</FamilyMember> 2849 <FamilyMember>greater_equal</FamilyMember> 2850 <FamilyMember>less_equal</FamilyMember> 2851 <FamilyMember>not_equal</FamilyMember> 2852 </BlockFamily> 2853 <BlockFamily> 2854 <FamilyMember>sin</FamilyMember> 2855 <FamilyMember>cos</FamilyMember> 2856 <FamilyMember>tan</FamilyMember> 2857 </BlockFamily> 2858 <BlockFamily> 2859 <FamilyMember>digital-on</FamilyMember> 2860 <FamilyMember>digital-off</FamilyMember> 2861 </BlockFamily> 2862 <BlockFamily> 2863 <FamilyMember>df_joystick_module_x</FamilyMember> 2864 <FamilyMember>df_joystick_module_y</FamilyMember> 2865 </BlockFamily> 2866 <BlockFamily> 2867 <FamilyMember>df_mma7260_x</FamilyMember> 2868 <FamilyMember>df_mma7260_y</FamilyMember> 2869 <FamilyMember>df_mma7260_z</FamilyMember> 2870 </BlockFamily> 2871 <BlockFamily> 2872 <FamilyMember>Tinker_I0</FamilyMember> 2873 <FamilyMember>Tinker_I1</FamilyMember> 2874 <FamilyMember>Tinker_I2</FamilyMember> 2875 <FamilyMember>Tinker_I3</FamilyMember> 2876 <FamilyMember>Tinker_I4</FamilyMember> 2877 <FamilyMember>Tinker_I5</FamilyMember> 2878 </BlockFamily> 2879 <BlockFamily> 2880 <FamilyMember>Tinker_O0</FamilyMember> 2881 <FamilyMember>Tinker_O1</FamilyMember> 2882 <FamilyMember>Tinker_O2</FamilyMember> 2883 <FamilyMember>Tinker_O3</FamilyMember> 2884 <FamilyMember>Tinker_O4</FamilyMember> 2885 <FamilyMember>Tinker_O5</FamilyMember> 2886 </BlockFamily> 2887 </BlockFamilies> 2888 2889 <BlockDrawerSets> 2890 <BlockDrawerSet name="factory" type="stack" location="southwest" 2891 window-per-drawer="no" drawer-draggable="no"> 2892 <BlockDrawer name="bd.control" type="factory" is-open="yes" 2893 button-color="252 203 125"> 2894 <BlockGenusMember>loop</BlockGenusMember> 2895 <BlockGenusMember>ifelse</BlockGenusMember> 2896 <BlockGenusMember>if</BlockGenusMember> 2897 <BlockGenusMember>while</BlockGenusMember> 2898 <BlockGenusMember>repeat_times</BlockGenusMember> 2899 <BlockGenusMember>subroutine</BlockGenusMember> 2900 <BlockGenusMember>subroutine-ref</BlockGenusMember> 2901 </BlockDrawer> 2902 2903 <BlockDrawer button-color="29 152 155" name="bd.pins" 2904 type="factory"> 2905 <BlockGenusMember>pin-read-digital</BlockGenusMember> 2906 <BlockGenusMember>pin-read-analog</BlockGenusMember> 2907 <BlockGenusMember>pin-write-digital</BlockGenusMember> 2908 <BlockGenusMember>pin-write-analog</BlockGenusMember> 2909 <BlockGenusMember>servo</BlockGenusMember> 2910 <BlockGenusMember>ultrasonic</BlockGenusMember> 2911 <BlockGenusMember>tone</BlockGenusMember> 2912 <BlockGenusMember>tone_time</BlockGenusMember> 2913 <BlockGenusMember>no_tone</BlockGenusMember> 2914 </BlockDrawer> 2915 2916 <BlockDrawer button-color="182 85 52" name="bd.number" 2917 type="factory"> 2918 <BlockGenusMember>number</BlockGenusMember> 2919 <BlockGenusMember>digital-high</BlockGenusMember> 2920 <BlockGenusMember>digital-low</BlockGenusMember> 2921 <BlockGenusMember>true</BlockGenusMember> 2922 <BlockGenusMember>false</BlockGenusMember> 2923 <BlockGenusMember>variable_number</BlockGenusMember> 2924 <BlockGenusMember>variable_digital</BlockGenusMember> 2925 <BlockGenusMember>setter_variable_number</BlockGenusMember> 2926 <BlockGenusMember>setter_variable_digital</BlockGenusMember> 2927 <BlockGenusMember>message</BlockGenusMember> 2928 <BlockGenusMember>glue_sn</BlockGenusMember> 2929 <BlockGenusMember>glue_sb</BlockGenusMember> 2930 <BlockGenusMember>Tinker_I0</BlockGenusMember> 2931 <BlockGenusMember>Tinker_I1</BlockGenusMember> 2932 <BlockGenusMember>Tinker_I2</BlockGenusMember> 2933 <BlockGenusMember>Tinker_I3</BlockGenusMember> 2934 <BlockGenusMember>Tinker_I4</BlockGenusMember> 2935 <BlockGenusMember>Tinker_I5</BlockGenusMember> 2936 <BlockGenusMember>Tinker_O0</BlockGenusMember> 2937 <BlockGenusMember>Tinker_O1</BlockGenusMember> 2938 <BlockGenusMember>Tinker_O2</BlockGenusMember> 2939 <BlockGenusMember>Tinker_O3</BlockGenusMember> 2940 <BlockGenusMember>Tinker_O4</BlockGenusMember> 2941 <BlockGenusMember>Tinker_O5</BlockGenusMember> 2942 </BlockDrawer> 2943 2944 <BlockDrawer button-color="114 147 71" name="bd.operators" 2945 type="factory"> 2946 <BlockGenusMember>and</BlockGenusMember> 2947 <BlockGenusMember>or</BlockGenusMember> 2948 <BlockGenusMember>not</BlockGenusMember> 2949 2950 <BlockGenusMember>addition</BlockGenusMember> 2951 <BlockGenusMember>subtraction</BlockGenusMember> 2952 <BlockGenusMember>multiplication</BlockGenusMember> 2953 <BlockGenusMember>division</BlockGenusMember> 2954 <BlockGenusMember>modulo</BlockGenusMember> 2955 <BlockGenusMember>min</BlockGenusMember> 2956 <BlockGenusMember>max</BlockGenusMember> 2957 2958 <BlockGenusMember>greater</BlockGenusMember> 2959 <BlockGenusMember>less</BlockGenusMember> 2960 <BlockGenusMember>equal</BlockGenusMember> 2961 <BlockGenusMember>greater_equal</BlockGenusMember> 2962 <BlockGenusMember>less_equal</BlockGenusMember> 2963 <BlockGenusMember>not_equal</BlockGenusMember> 2964 2965 <BlockGenusMember>abs</BlockGenusMember> 2966 <BlockGenusMember>pow</BlockGenusMember> 2967 <BlockGenusMember>sqrt</BlockGenusMember> 2968 <BlockGenusMember>sin</BlockGenusMember> 2969 <BlockGenusMember>cos</BlockGenusMember> 2970 <BlockGenusMember>tan</BlockGenusMember> 2971 </BlockDrawer> 2972 <BlockDrawer button-color="95 120 132" name="bd.utilities" 2973 type="factory"> 2974 <BlockGenusMember>delay</BlockGenusMember> 2975 <BlockGenusMember>random</BlockGenusMember> 2976 <BlockGenusMember>delay_microseconds</BlockGenusMember> 2977 <BlockGenusMember>millis</BlockGenusMember> 2978 <BlockGenusMember>serial_println</BlockGenusMember> 2979 <BlockGenusMember>map_common</BlockGenusMember> 2980 <BlockGenusMember>map</BlockGenusMember> 2981 <BlockGenusMember>wire_write</BlockGenusMember> 2982 <BlockGenusMember>wire_read</BlockGenusMember> 2983 <BlockGenusMember>wire_isread</BlockGenusMember> 2984 </BlockDrawer> 2985 2986 <BlockDrawer button-color="255 255 255" name="bd.tinkerkit" 2987 type="factory"> 2988 <BlockGenusMember>Tinker_LED</BlockGenusMember> 2989 <BlockGenusMember>Tinker_LED_pwm</BlockGenusMember> 2990 <BlockGenusMember>Tinker_Button</BlockGenusMember> 2991 <BlockGenusMember>Tinker_Accmeter</BlockGenusMember> 2992 <BlockGenusMember>Tinker_Hall</BlockGenusMember> 2993 <BlockGenusMember>Tinker_LDR</BlockGenusMember> 2994 <BlockGenusMember>Tinker_LinearPotentiometer</BlockGenusMember> 2995 <BlockGenusMember>Tinker_RotaryPotentiometer</BlockGenusMember> 2996 <BlockGenusMember>Tinker_Thermistor</BlockGenusMember> 2997 <BlockGenusMember>Tinker_Touch</BlockGenusMember> 2998 <BlockGenusMember>Tinker_Tilt</BlockGenusMember> 2999 <BlockGenusMember>Tinker_Relay</BlockGenusMember> 3000 <BlockGenusMember>Tinker_Mosfet</BlockGenusMember> 3001 <BlockGenusMember>Tinker_Mosfet_pwm</BlockGenusMember> 3002 </BlockDrawer> 3003 <!-- <BlockDrawer button-color="0 255 0" name="XinChejian" type="factory"> 3004 <BlockGenusMember>xcj_motor_forward</BlockGenusMember> <BlockGenusMember>xcj_motor_backward</BlockGenusMember> 3005 <BlockGenusMember>xcj_ms_digital_read</BlockGenusMember> <BlockGenusMember>xcj_ms_digital_write</BlockGenusMember> 3006 </BlockDrawer> --> 3007 <BlockDrawer button-color="255 102 0" name="bd.dfrobot" 3008 type="factory"> 3009 <BlockGenusMember>df_digital_viberation_sensor</BlockGenusMember> 3010 <BlockGenusMember>df_digital_tilt_sensor</BlockGenusMember> 3011 <BlockGenusMember>df_digital_infrared_motion_sensor</BlockGenusMember> 3012 <BlockGenusMember>df_digital_ir_receiver_module</BlockGenusMember> 3013 <BlockGenusMember>df_adjustable_infrared_sensor_switch</BlockGenusMember> 3014 <BlockGenusMember>df_line_tracking_sensor</BlockGenusMember> 3015 <BlockGenusMember>df_digital_push_button</BlockGenusMember> 3016 <BlockGenusMember>df_joystick_module_button</BlockGenusMember> 3017 <BlockGenusMember>df_capacitive_touch_sensor</BlockGenusMember> 3018 <BlockGenusMember>df_digital_magnetic_sensor</BlockGenusMember> 3019 <BlockGenusMember>df_pizeo_disk_vibration_sensor</BlockGenusMember> 3020 <BlockGenusMember>df_analog_ambient_light_sensor</BlockGenusMember> 3021 <BlockGenusMember>df_analog_grayscale_sensor</BlockGenusMember> 3022 <BlockGenusMember>df_flame_sensor</BlockGenusMember> 3023 <BlockGenusMember>df_temperature_sensor</BlockGenusMember> 3024 <BlockGenusMember>df_joystick_module_x</BlockGenusMember> 3025 <BlockGenusMember>df_joystick_module_y</BlockGenusMember> 3026 <BlockGenusMember>df_analog_mma7361_x</BlockGenusMember> 3027 <BlockGenusMember>df_analog_mma7361_y</BlockGenusMember> 3028 <BlockGenusMember>df_analog_mma7361_z</BlockGenusMember> 3029 <BlockGenusMember>df_mma7260_x</BlockGenusMember> 3030 <BlockGenusMember>df_mma7260_y</BlockGenusMember> 3031 <BlockGenusMember>df_mma7260_z</BlockGenusMember> 3032 <BlockGenusMember>df_analog_gp2y0a21</BlockGenusMember> 3033 <BlockGenusMember>df_analog_moisture</BlockGenusMember> 3034 <BlockGenusMember>df_analog_rotation_sensor_v1</BlockGenusMember> 3035 <BlockGenusMember>df_analog_rotation_sensor_v2</BlockGenusMember> 3036 <BlockGenusMember>df_analog_sound_sensor</BlockGenusMember> 3037 <BlockGenusMember>df_analog_gas_sensor</BlockGenusMember> 3038 <BlockGenusMember>df_analog_co_sensor</BlockGenusMember> 3039 <BlockGenusMember>df_analog_voltage_divider</BlockGenusMember> 3040 <BlockGenusMember>df_servo</BlockGenusMember> 3041 <BlockGenusMember>df_360_degree_rotation_motor</BlockGenusMember> 3042 <BlockGenusMember>df_led</BlockGenusMember> 3043 <BlockGenusMember>df_led_pwm</BlockGenusMember> 3044 <BlockGenusMember>df_piranha_led</BlockGenusMember> 3045 <BlockGenusMember>df_piranha_led_pwm</BlockGenusMember> 3046 <BlockGenusMember>df_relay</BlockGenusMember> 3047 <BlockGenusMember>df_buzzer</BlockGenusMember> 3048 <BlockGenusMember>df_buzzer_tone</BlockGenusMember> 3049 <BlockGenusMember>df_buzzer_tone_delay</BlockGenusMember> 3050 </BlockDrawer> 3051 3052 <BlockDrawer button-color="0 255 0" name="bd.seeedstudio"> 3053 <BlockGenusMember>seeed_joystick</BlockGenusMember> 3054 <BlockGenusMember>seeed_joystick_button</BlockGenusMember> 3055 </BlockDrawer> 3056 3057 <BlockDrawer button-color="135 206 235" name="bd.linksprite_LinkerKit"> 3058 <BlockGenusMember>ls_10mmLEDModule</BlockGenusMember> 3059 <BlockGenusMember>ls_5mmLEDModule</BlockGenusMember> 3060 <BlockGenusMember>ls_AccelerometerModule_x</BlockGenusMember> 3061 <BlockGenusMember>ls_AccelerometerModule_y</BlockGenusMember> 3062 <BlockGenusMember>ls_AccelerometerModule_z</BlockGenusMember> 3063 <BlockGenusMember>ls_ButtonModule</BlockGenusMember> 3064 <BlockGenusMember>ls_BuzzerModule</BlockGenusMember> 3065 <BlockGenusMember>ls_HallSensor</BlockGenusMember> 3066 <BlockGenusMember>ls_HighPowerLedModule</BlockGenusMember> 3067 <BlockGenusMember>ls_JoystickSensorModule_x</BlockGenusMember> 3068 <BlockGenusMember>ls_JoystickSensorModule_y</BlockGenusMember> 3069 <BlockGenusMember>ls_LDRModule</BlockGenusMember> 3070 <BlockGenusMember>ls_LEDBar</BlockGenusMember> 3071 <BlockGenusMember>ls_Linear-SlidePotentiometerModule</BlockGenusMember> 3072 <BlockGenusMember>ls_MagneticSwitch</BlockGenusMember> 3073 <BlockGenusMember>ls_MosfetModule</BlockGenusMember> 3074 <BlockGenusMember>ls_RelayModule</BlockGenusMember> 3075 <BlockGenusMember>ls_RotaryPotentiometerModule</BlockGenusMember> 3076 <BlockGenusMember>ls_RTCModule</BlockGenusMember> 3077 <BlockGenusMember>ls_SoundSensor</BlockGenusMember> 3078 <BlockGenusMember>ls_ThermalModule</BlockGenusMember> 3079 <BlockGenusMember>ls_TiltModule</BlockGenusMember> 3080 <BlockGenusMember>ls_TouchSensorModule</BlockGenusMember> 3081 </BlockDrawer> 3082 <!-- Shapes are automatically loaded as blocks in the Shapes drawer (see 3083 slcodeblocks.ShapeBlocksGenerator for details) --> 3084 <!-- Sound blocks reside in the auto-generated String drawer. (see slcodeblocks.SoundBlocksGenerator 3085 for details) --> 3086 </BlockDrawerSet> 3087 </BlockDrawerSets> 3088 3089 <Pages drawer-with-page="yes"> 3090 <Page page-name="ArduBlock" page-width="400" /> 3091 <!-- <Page page-name="Everyone" page-width="400"></Page> <Page page-name="Setup" 3092 page-width="400"></Page> <Page page-name="Runtime" page-width="400"></Page> --> 3093 </Pages> 3094 3095 <TrashCan> 3096 <OpenTrashImage>com/ardublock/block/trash_open.png</OpenTrashImage> 3097 <ClosedTrashImage>com/ardublock/block/trash.png</ClosedTrashImage> 3098 </TrashCan> 3099 3100</BlockLangDef>