PageRenderTime 51ms CodeModel.GetById 19ms RepoModel.GetById 0ms app.codeStats 0ms

/src/main/resources/com/ardublock/block/ardublock.xml

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