node-poweredup 10.0.0 → 10.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (313) hide show
  1. package/README.md +0 -1
  2. package/dist/browser/poweredup.js +6193 -0
  3. package/dist/browser/poweredup.js.map +7 -0
  4. package/dist/consts.d.ts +40 -0
  5. package/dist/consts.d.ts.map +1 -1
  6. package/dist/consts.js +42 -0
  7. package/dist/consts.js.map +1 -1
  8. package/dist/devices/absolutemotor.d.ts +8 -6
  9. package/dist/devices/absolutemotor.d.ts.map +1 -1
  10. package/dist/devices/absolutemotor.js +24 -31
  11. package/dist/devices/absolutemotor.js.map +1 -1
  12. package/dist/devices/basicmotor.d.ts +11 -10
  13. package/dist/devices/basicmotor.d.ts.map +1 -1
  14. package/dist/devices/basicmotor.js +16 -22
  15. package/dist/devices/basicmotor.js.map +1 -1
  16. package/dist/devices/colordistancesensor.d.ts +13 -12
  17. package/dist/devices/colordistancesensor.d.ts.map +1 -1
  18. package/dist/devices/colordistancesensor.js +25 -31
  19. package/dist/devices/colordistancesensor.js.map +1 -1
  20. package/dist/devices/device.d.ts +15 -6
  21. package/dist/devices/device.d.ts.map +1 -1
  22. package/dist/devices/device.js +209 -21
  23. package/dist/devices/device.js.map +1 -1
  24. package/dist/devices/duplotrainbasespeaker.d.ts +4 -4
  25. package/dist/devices/duplotrainbasespeaker.d.ts.map +1 -1
  26. package/dist/devices/duplotrainbasespeaker.js +5 -8
  27. package/dist/devices/duplotrainbasespeaker.js.map +1 -1
  28. package/dist/devices/hubled.d.ts +5 -4
  29. package/dist/devices/hubled.d.ts.map +1 -1
  30. package/dist/devices/hubled.js +24 -24
  31. package/dist/devices/hubled.js.map +1 -1
  32. package/dist/devices/light.d.ts +7 -4
  33. package/dist/devices/light.d.ts.map +1 -1
  34. package/dist/devices/light.js +11 -17
  35. package/dist/devices/light.js.map +1 -1
  36. package/dist/devices/piezobuzzer.d.ts +3 -2
  37. package/dist/devices/piezobuzzer.d.ts.map +1 -1
  38. package/dist/devices/piezobuzzer.js +2 -2
  39. package/dist/devices/piezobuzzer.js.map +1 -1
  40. package/dist/devices/tachomotor.d.ts +14 -8
  41. package/dist/devices/tachomotor.d.ts.map +1 -1
  42. package/dist/devices/tachomotor.js +50 -56
  43. package/dist/devices/tachomotor.js.map +1 -1
  44. package/dist/devices/technic3x3colorlightmatrix.d.ts +3 -2
  45. package/dist/devices/technic3x3colorlightmatrix.d.ts.map +1 -1
  46. package/dist/devices/technic3x3colorlightmatrix.js +20 -23
  47. package/dist/devices/technic3x3colorlightmatrix.js.map +1 -1
  48. package/dist/devices/techniccolorsensor.d.ts +9 -4
  49. package/dist/devices/techniccolorsensor.d.ts.map +1 -1
  50. package/dist/devices/techniccolorsensor.js +99 -8
  51. package/dist/devices/techniccolorsensor.js.map +1 -1
  52. package/dist/devices/technicdistancesensor.d.ts +1 -1
  53. package/dist/devices/technicdistancesensor.js +1 -1
  54. package/dist/devices/technicmediumhubtiltsensor.d.ts +7 -6
  55. package/dist/devices/technicmediumhubtiltsensor.d.ts.map +1 -1
  56. package/dist/devices/technicmediumhubtiltsensor.js +9 -18
  57. package/dist/devices/technicmediumhubtiltsensor.js.map +1 -1
  58. package/dist/devices/tiltsensor.d.ts +4 -1
  59. package/dist/devices/tiltsensor.d.ts.map +1 -1
  60. package/dist/devices/tiltsensor.js +84 -3
  61. package/dist/devices/tiltsensor.js.map +1 -1
  62. package/dist/hubs/basehub.d.ts +1 -0
  63. package/dist/hubs/basehub.d.ts.map +1 -1
  64. package/dist/hubs/basehub.js +17 -0
  65. package/dist/hubs/basehub.js.map +1 -1
  66. package/dist/hubs/lpf2hub.d.ts +1 -0
  67. package/dist/hubs/lpf2hub.d.ts.map +1 -1
  68. package/dist/hubs/lpf2hub.js +11 -0
  69. package/dist/hubs/lpf2hub.js.map +1 -1
  70. package/dist/portoutputcommand.d.ts +13 -0
  71. package/dist/portoutputcommand.d.ts.map +1 -0
  72. package/dist/portoutputcommand.js +30 -0
  73. package/dist/portoutputcommand.js.map +1 -0
  74. package/dist/portoutputsleep.d.ts +6 -0
  75. package/dist/portoutputsleep.d.ts.map +1 -0
  76. package/dist/portoutputsleep.js +10 -0
  77. package/dist/portoutputsleep.js.map +1 -0
  78. package/dist/utils.d.ts +1 -3
  79. package/dist/utils.d.ts.map +1 -1
  80. package/dist/utils.js +13 -19
  81. package/dist/utils.js.map +1 -1
  82. package/package.json +1 -1
  83. package/src/consts.ts +44 -0
  84. package/src/devices/absolutemotor.ts +24 -31
  85. package/src/devices/basicmotor.ts +16 -22
  86. package/src/devices/colordistancesensor.ts +23 -29
  87. package/src/devices/device.ts +198 -20
  88. package/src/devices/duplotrainbasespeaker.ts +5 -8
  89. package/src/devices/hubled.ts +22 -22
  90. package/src/devices/light.ts +11 -18
  91. package/src/devices/piezobuzzer.ts +3 -3
  92. package/src/devices/tachomotor.ts +47 -53
  93. package/src/devices/technic3x3colorlightmatrix.ts +20 -23
  94. package/src/devices/techniccolorsensor.ts +102 -10
  95. package/src/devices/technicdistancesensor.ts +1 -1
  96. package/src/devices/technicmediumhubtiltsensor.ts +9 -18
  97. package/src/devices/tiltsensor.ts +85 -5
  98. package/src/hubs/basehub.ts +18 -0
  99. package/src/hubs/lpf2hub.ts +12 -5
  100. package/src/portoutputcommand.ts +37 -0
  101. package/src/portoutputsleep.ts +11 -0
  102. package/src/utils.ts +14 -19
  103. package/tsconfig.tsbuildinfo +1 -1
  104. package/webpack.config.cjs +35 -0
  105. package/dist/node/color.d.ts +0 -6
  106. package/dist/node/color.js +0 -15
  107. package/dist/node/color.js.map +0 -1
  108. package/dist/node/commands.d.ts +0 -299
  109. package/dist/node/commands.js +0 -672
  110. package/dist/node/commands.js.map +0 -1
  111. package/dist/node/connection.d.ts +0 -187
  112. package/dist/node/connection.js +0 -478
  113. package/dist/node/connection.js.map +0 -1
  114. package/dist/node/consts.d.ts +0 -644
  115. package/dist/node/consts.js +0 -675
  116. package/dist/node/consts.js.map +0 -1
  117. package/dist/node/devices/absolutemotor.d.ts +0 -43
  118. package/dist/node/devices/absolutemotor.js +0 -118
  119. package/dist/node/devices/absolutemotor.js.map +0 -1
  120. package/dist/node/devices/basicmotor.d.ts +0 -40
  121. package/dist/node/devices/basicmotor.js +0 -61
  122. package/dist/node/devices/basicmotor.js.map +0 -1
  123. package/dist/node/devices/colordistancesensor.d.ts +0 -79
  124. package/dist/node/devices/colordistancesensor.js +0 -284
  125. package/dist/node/devices/colordistancesensor.js.map +0 -1
  126. package/dist/node/devices/currentsensor.d.ts +0 -16
  127. package/dist/node/devices/currentsensor.js +0 -55
  128. package/dist/node/devices/currentsensor.js.map +0 -1
  129. package/dist/node/devices/device.d.ts +0 -71
  130. package/dist/node/devices/device.js +0 -162
  131. package/dist/node/devices/device.js.map +0 -1
  132. package/dist/node/devices/duplotrainbasecolorsensor.d.ts +0 -19
  133. package/dist/node/devices/duplotrainbasecolorsensor.js +0 -77
  134. package/dist/node/devices/duplotrainbasecolorsensor.js.map +0 -1
  135. package/dist/node/devices/duplotrainbasemotor.d.ts +0 -9
  136. package/dist/node/devices/duplotrainbasemotor.js +0 -12
  137. package/dist/node/devices/duplotrainbasemotor.js.map +0 -1
  138. package/dist/node/devices/duplotrainbasespeaker.d.ts +0 -28
  139. package/dist/node/devices/duplotrainbasespeaker.js +0 -40
  140. package/dist/node/devices/duplotrainbasespeaker.js.map +0 -1
  141. package/dist/node/devices/duplotrainbasespeedometer.d.ts +0 -16
  142. package/dist/node/devices/duplotrainbasespeedometer.js +0 -34
  143. package/dist/node/devices/duplotrainbasespeedometer.js.map +0 -1
  144. package/dist/node/devices/hubled.d.ts +0 -29
  145. package/dist/node/devices/hubled.js +0 -60
  146. package/dist/node/devices/hubled.js.map +0 -1
  147. package/dist/node/devices/index.d.ts +0 -14
  148. package/dist/node/devices/index.js +0 -154
  149. package/dist/node/devices/index.js.map +0 -1
  150. package/dist/node/devices/led.d.ts +0 -140
  151. package/dist/node/devices/led.js +0 -295
  152. package/dist/node/devices/led.js.map +0 -1
  153. package/dist/node/devices/light.d.ts +0 -25
  154. package/dist/node/devices/light.js +0 -46
  155. package/dist/node/devices/light.js.map +0 -1
  156. package/dist/node/devices/marioaccelerometer.d.ts +0 -17
  157. package/dist/node/devices/marioaccelerometer.js +0 -50
  158. package/dist/node/devices/marioaccelerometer.js.map +0 -1
  159. package/dist/node/devices/mariobarcodesensor.d.ts +0 -17
  160. package/dist/node/devices/mariobarcodesensor.js +0 -58
  161. package/dist/node/devices/mariobarcodesensor.js.map +0 -1
  162. package/dist/node/devices/mariopantssensor.d.ts +0 -16
  163. package/dist/node/devices/mariopantssensor.js +0 -34
  164. package/dist/node/devices/mariopantssensor.js.map +0 -1
  165. package/dist/node/devices/mediumlinearmotor.d.ts +0 -9
  166. package/dist/node/devices/mediumlinearmotor.js +0 -12
  167. package/dist/node/devices/mediumlinearmotor.js.map +0 -1
  168. package/dist/node/devices/motionsensor.d.ts +0 -16
  169. package/dist/node/devices/motionsensor.js +0 -38
  170. package/dist/node/devices/motionsensor.js.map +0 -1
  171. package/dist/node/devices/motor.d.ts +0 -182
  172. package/dist/node/devices/motor.js +0 -367
  173. package/dist/node/devices/motor.js.map +0 -1
  174. package/dist/node/devices/movehubmediumlinearmotor.d.ts +0 -9
  175. package/dist/node/devices/movehubmediumlinearmotor.js +0 -12
  176. package/dist/node/devices/movehubmediumlinearmotor.js.map +0 -1
  177. package/dist/node/devices/movehubtiltsensor.d.ts +0 -16
  178. package/dist/node/devices/movehubtiltsensor.js +0 -36
  179. package/dist/node/devices/movehubtiltsensor.js.map +0 -1
  180. package/dist/node/devices/piezobuzzer.d.ts +0 -17
  181. package/dist/node/devices/piezobuzzer.js +0 -28
  182. package/dist/node/devices/piezobuzzer.js.map +0 -1
  183. package/dist/node/devices/remotecontrolbutton.d.ts +0 -19
  184. package/dist/node/devices/remotecontrolbutton.js +0 -40
  185. package/dist/node/devices/remotecontrolbutton.js.map +0 -1
  186. package/dist/node/devices/sensor.d.ts +0 -305
  187. package/dist/node/devices/sensor.js +0 -662
  188. package/dist/node/devices/sensor.js.map +0 -1
  189. package/dist/node/devices/simplemediumlinearmotor.d.ts +0 -9
  190. package/dist/node/devices/simplemediumlinearmotor.js +0 -12
  191. package/dist/node/devices/simplemediumlinearmotor.js.map +0 -1
  192. package/dist/node/devices/tachomotor.d.ts +0 -70
  193. package/dist/node/devices/tachomotor.js +0 -167
  194. package/dist/node/devices/tachomotor.js.map +0 -1
  195. package/dist/node/devices/technic3x3colorlightmatrix.d.ts +0 -22
  196. package/dist/node/devices/technic3x3colorlightmatrix.js +0 -54
  197. package/dist/node/devices/technic3x3colorlightmatrix.js.map +0 -1
  198. package/dist/node/devices/techniccolorsensor.d.ts +0 -27
  199. package/dist/node/devices/techniccolorsensor.js +0 -72
  200. package/dist/node/devices/techniccolorsensor.js.map +0 -1
  201. package/dist/node/devices/technicdistancesensor.d.ts +0 -27
  202. package/dist/node/devices/technicdistancesensor.js +0 -58
  203. package/dist/node/devices/technicdistancesensor.js.map +0 -1
  204. package/dist/node/devices/technicforcesensor.d.ts +0 -18
  205. package/dist/node/devices/technicforcesensor.js +0 -58
  206. package/dist/node/devices/technicforcesensor.js.map +0 -1
  207. package/dist/node/devices/techniclargeangularmotor.d.ts +0 -12
  208. package/dist/node/devices/techniclargeangularmotor.js +0 -12
  209. package/dist/node/devices/techniclargeangularmotor.js.map +0 -1
  210. package/dist/node/devices/techniclargelinearmotor.d.ts +0 -9
  211. package/dist/node/devices/techniclargelinearmotor.js +0 -12
  212. package/dist/node/devices/techniclargelinearmotor.js.map +0 -1
  213. package/dist/node/devices/technicmediumangularmotor.d.ts +0 -12
  214. package/dist/node/devices/technicmediumangularmotor.js +0 -12
  215. package/dist/node/devices/technicmediumangularmotor.js.map +0 -1
  216. package/dist/node/devices/technicmediumhubaccelerometersensor.d.ts +0 -16
  217. package/dist/node/devices/technicmediumhubaccelerometersensor.js +0 -38
  218. package/dist/node/devices/technicmediumhubaccelerometersensor.js.map +0 -1
  219. package/dist/node/devices/technicmediumhubgyrosensor.d.ts +0 -16
  220. package/dist/node/devices/technicmediumhubgyrosensor.js +0 -38
  221. package/dist/node/devices/technicmediumhubgyrosensor.js.map +0 -1
  222. package/dist/node/devices/technicmediumhubtiltsensor.d.ts +0 -40
  223. package/dist/node/devices/technicmediumhubtiltsensor.js +0 -106
  224. package/dist/node/devices/technicmediumhubtiltsensor.js.map +0 -1
  225. package/dist/node/devices/technicsmallangularmotor.d.ts +0 -12
  226. package/dist/node/devices/technicsmallangularmotor.js +0 -12
  227. package/dist/node/devices/technicsmallangularmotor.js.map +0 -1
  228. package/dist/node/devices/technicxlargelinearmotor.d.ts +0 -9
  229. package/dist/node/devices/technicxlargelinearmotor.js +0 -12
  230. package/dist/node/devices/technicxlargelinearmotor.js.map +0 -1
  231. package/dist/node/devices/tiltsensor.d.ts +0 -16
  232. package/dist/node/devices/tiltsensor.js +0 -36
  233. package/dist/node/devices/tiltsensor.js.map +0 -1
  234. package/dist/node/devices/trainmotor.d.ts +0 -9
  235. package/dist/node/devices/trainmotor.js +0 -12
  236. package/dist/node/devices/trainmotor.js.map +0 -1
  237. package/dist/node/devices/voltagesensor.d.ts +0 -16
  238. package/dist/node/devices/voltagesensor.js +0 -59
  239. package/dist/node/devices/voltagesensor.js.map +0 -1
  240. package/dist/node/hub.d.ts +0 -291
  241. package/dist/node/hub.js +0 -778
  242. package/dist/node/hub.js.map +0 -1
  243. package/dist/node/hubs/basehub.d.ts +0 -162
  244. package/dist/node/hubs/basehub.js +0 -392
  245. package/dist/node/hubs/basehub.js.map +0 -1
  246. package/dist/node/hubs/duplotrainbase.d.ts +0 -17
  247. package/dist/node/hubs/duplotrainbase.js +0 -35
  248. package/dist/node/hubs/duplotrainbase.js.map +0 -1
  249. package/dist/node/hubs/hub.d.ts +0 -19
  250. package/dist/node/hubs/hub.js +0 -44
  251. package/dist/node/hubs/hub.js.map +0 -1
  252. package/dist/node/hubs/lpf2hub.d.ts +0 -48
  253. package/dist/node/hubs/lpf2hub.js +0 -314
  254. package/dist/node/hubs/lpf2hub.js.map +0 -1
  255. package/dist/node/hubs/mario.d.ts +0 -17
  256. package/dist/node/hubs/mario.js +0 -31
  257. package/dist/node/hubs/mario.js.map +0 -1
  258. package/dist/node/hubs/movehub.d.ts +0 -18
  259. package/dist/node/hubs/movehub.js +0 -46
  260. package/dist/node/hubs/movehub.js.map +0 -1
  261. package/dist/node/hubs/remotecontrol.d.ts +0 -17
  262. package/dist/node/hubs/remotecontrol.js +0 -37
  263. package/dist/node/hubs/remotecontrol.js.map +0 -1
  264. package/dist/node/hubs/technicmediumhub.d.ts +0 -17
  265. package/dist/node/hubs/technicmediumhub.js +0 -42
  266. package/dist/node/hubs/technicmediumhub.js.map +0 -1
  267. package/dist/node/hubs/technicsmallhub.d.ts +0 -18
  268. package/dist/node/hubs/technicsmallhub.js +0 -41
  269. package/dist/node/hubs/technicsmallhub.js.map +0 -1
  270. package/dist/node/hubs/wedo2smarthub.d.ts +0 -40
  271. package/dist/node/hubs/wedo2smarthub.js +0 -188
  272. package/dist/node/hubs/wedo2smarthub.js.map +0 -1
  273. package/dist/node/index-browser.d.ts +0 -1
  274. package/dist/node/index-browser.js +0 -96
  275. package/dist/node/index-browser.js.map +0 -1
  276. package/dist/node/index-node.d.ts +0 -49
  277. package/dist/node/index-node.js +0 -50
  278. package/dist/node/index-node.js.map +0 -1
  279. package/dist/node/index.d.ts +0 -31
  280. package/dist/node/index.js +0 -93
  281. package/dist/node/index.js.map +0 -1
  282. package/dist/node/index.mjs +0 -0
  283. package/dist/node/interfaces.d.ts +0 -23
  284. package/dist/node/interfaces.js +0 -2
  285. package/dist/node/interfaces.js.map +0 -1
  286. package/dist/node/nobleabstraction.d.ts +0 -26
  287. package/dist/node/nobleabstraction.js +0 -123
  288. package/dist/node/nobleabstraction.js.map +0 -1
  289. package/dist/node/poweredup-browser.d.ts +0 -50
  290. package/dist/node/poweredup-browser.js +0 -216
  291. package/dist/node/poweredup-browser.js.map +0 -1
  292. package/dist/node/poweredup-node.d.ts +0 -54
  293. package/dist/node/poweredup-node.js +0 -173
  294. package/dist/node/poweredup-node.js.map +0 -1
  295. package/dist/node/poweredup.d.ts +0 -83
  296. package/dist/node/poweredup.js +0 -542
  297. package/dist/node/poweredup.js.map +0 -1
  298. package/dist/node/protocol-wedo.d.ts +0 -158
  299. package/dist/node/protocol-wedo.js +0 -342
  300. package/dist/node/protocol-wedo.js.map +0 -1
  301. package/dist/node/protocol.d.ts +0 -340
  302. package/dist/node/protocol.js +0 -730
  303. package/dist/node/protocol.js.map +0 -1
  304. package/dist/node/types.d.ts +0 -408
  305. package/dist/node/types.js +0 -291
  306. package/dist/node/types.js.map +0 -1
  307. package/dist/node/utils.d.ts +0 -12
  308. package/dist/node/utils.js +0 -90
  309. package/dist/node/utils.js.map +0 -1
  310. package/dist/node/webbleabstraction.d.ts +0 -26
  311. package/dist/node/webbleabstraction.js +0 -104
  312. package/dist/node/webbleabstraction.js.map +0 -1
  313. package/dist/tsconfig.tsbuildinfo +0 -1
@@ -1,367 +0,0 @@
1
- "use strict";
2
- /**
3
- * Motor devices - Various motor types for LEGO Powered UP
4
- */
5
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- var desc = Object.getOwnPropertyDescriptor(m, k);
8
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
- desc = { enumerable: true, get: function() { return m[k]; } };
10
- }
11
- Object.defineProperty(o, k2, desc);
12
- }) : (function(o, m, k, k2) {
13
- if (k2 === undefined) k2 = k;
14
- o[k2] = m[k];
15
- }));
16
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
- Object.defineProperty(o, "default", { enumerable: true, value: v });
18
- }) : function(o, v) {
19
- o["default"] = v;
20
- });
21
- var __importStar = (this && this.__importStar) || (function () {
22
- var ownKeys = function(o) {
23
- ownKeys = Object.getOwnPropertyNames || function (o) {
24
- var ar = [];
25
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
- return ar;
27
- };
28
- return ownKeys(o);
29
- };
30
- return function (mod) {
31
- if (mod && mod.__esModule) return mod;
32
- var result = {};
33
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
- __setModuleDefault(result, mod);
35
- return result;
36
- };
37
- })();
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.DuploTrainMotor = exports.WeDo2MediumMotor = exports.TechnicSmallAngularMotor = exports.TechnicLargeAngularMotor = exports.TechnicMediumAngularMotor = exports.TechnicXLargeLinearMotor = exports.TechnicLargeLinearMotor = exports.MoveHubMediumLinearMotor = exports.MediumLinearMotor = exports.AbsoluteMotor = exports.TachoMotor = exports.TrainMotor = exports.BasicMotor = exports.MotorMode = void 0;
40
- const types_1 = require("../types");
41
- const hub_1 = require("../hub");
42
- const device_1 = require("./device");
43
- const commands = __importStar(require("../commands"));
44
- // ============================================================================
45
- // Motor Modes
46
- // ============================================================================
47
- var MotorMode;
48
- (function (MotorMode) {
49
- MotorMode[MotorMode["POWER"] = 0] = "POWER";
50
- MotorMode[MotorMode["SPEED"] = 1] = "SPEED";
51
- MotorMode[MotorMode["POSITION"] = 2] = "POSITION";
52
- MotorMode[MotorMode["ABSOLUTE_POSITION"] = 3] = "ABSOLUTE_POSITION";
53
- })(MotorMode || (exports.MotorMode = MotorMode = {}));
54
- // ============================================================================
55
- // Basic Motor (simple power control only)
56
- // ============================================================================
57
- /**
58
- * Basic motor - simple power control without speed feedback
59
- */
60
- class BasicMotor extends device_1.Device {
61
- constructor(hub, portInfo) {
62
- super(hub, portInfo);
63
- }
64
- /**
65
- * Subscribe to motor updates (not applicable for basic motors)
66
- */
67
- async subscribe(_mode) {
68
- // Basic motors don't have sensor feedback
69
- }
70
- /**
71
- * Set motor power (-100 to 100)
72
- */
73
- async setPower(power) {
74
- power = Math.max(-100, Math.min(100, power));
75
- if (this._hub instanceof hub_1.LWP3Hub) {
76
- await this._hub.motorPower(this._portId, power);
77
- }
78
- else if (this._hub instanceof hub_1.WeDo2Hub) {
79
- await this._hub.motorPower(this._portId, power);
80
- }
81
- }
82
- /**
83
- * Stop the motor
84
- */
85
- async stop() {
86
- await this.setPower(0);
87
- }
88
- /**
89
- * Brake the motor
90
- */
91
- async brake() {
92
- if (this._hub instanceof hub_1.LWP3Hub) {
93
- await this._hub.motorBrake(this._portId);
94
- }
95
- else {
96
- await this.stop();
97
- }
98
- }
99
- }
100
- exports.BasicMotor = BasicMotor;
101
- // ============================================================================
102
- // Train Motor (inherits from BasicMotor)
103
- // ============================================================================
104
- /**
105
- * Train motor - simple power control for train sets
106
- */
107
- class TrainMotor extends BasicMotor {
108
- constructor(hub, portInfo) {
109
- super(hub, portInfo);
110
- }
111
- }
112
- exports.TrainMotor = TrainMotor;
113
- // ============================================================================
114
- // Tacho Motor (with speed and position feedback)
115
- // ============================================================================
116
- /**
117
- * Tacho motor - motor with speed feedback and encoder
118
- */
119
- class TachoMotor extends device_1.Device {
120
- constructor(hub, portInfo) {
121
- super(hub, portInfo);
122
- this._speed = 0;
123
- this._position = 0;
124
- }
125
- /**
126
- * Get current speed
127
- */
128
- get speed() {
129
- return this._speed;
130
- }
131
- /**
132
- * Get current position (degrees)
133
- */
134
- get position() {
135
- return this._position;
136
- }
137
- /**
138
- * Subscribe to motor updates
139
- */
140
- async subscribe(mode = MotorMode.SPEED) {
141
- if (this._hub instanceof hub_1.LWP3Hub) {
142
- await this._hub.subscribe(this._portId, mode);
143
- }
144
- }
145
- /**
146
- * Set motor power (-100 to 100)
147
- */
148
- async setPower(power) {
149
- power = Math.max(-100, Math.min(100, power));
150
- if (this._hub instanceof hub_1.LWP3Hub) {
151
- await this._hub.motorPower(this._portId, power);
152
- }
153
- }
154
- /**
155
- * Set motor speed with feedback (-100 to 100)
156
- */
157
- async setSpeed(speed, maxPower = 100) {
158
- speed = Math.max(-100, Math.min(100, speed));
159
- maxPower = Math.max(0, Math.min(100, maxPower));
160
- if (this._hub instanceof hub_1.LWP3Hub) {
161
- await this._hub.motorSpeed(this._portId, speed, maxPower);
162
- }
163
- }
164
- /**
165
- * Run motor for a specified time
166
- */
167
- async runForTime(time, speed, maxPower = 100, endState = types_1.BrakingStyle.BRAKE) {
168
- if (this._hub instanceof hub_1.LWP3Hub) {
169
- await this._hub.motorRunForTime(this._portId, time, speed, maxPower, endState);
170
- }
171
- }
172
- /**
173
- * Run motor for a specified number of degrees
174
- */
175
- async runForDegrees(degrees, speed, maxPower = 100, endState = types_1.BrakingStyle.BRAKE) {
176
- if (this._hub instanceof hub_1.LWP3Hub) {
177
- await this._hub.motorRunForDegrees(this._portId, degrees, speed, maxPower, endState);
178
- }
179
- }
180
- /**
181
- * Stop the motor
182
- */
183
- async stop() {
184
- await this.setPower(0);
185
- }
186
- /**
187
- * Brake the motor
188
- */
189
- async brake() {
190
- if (this._hub instanceof hub_1.LWP3Hub) {
191
- await this._hub.motorBrake(this._portId);
192
- }
193
- }
194
- /**
195
- * Reset position to zero
196
- */
197
- async resetPosition() {
198
- if (this._hub instanceof hub_1.LWP3Hub) {
199
- const message = commands.motorResetEncoder(this._portId, 0);
200
- await this._hub.sendRaw(message);
201
- }
202
- this._position = 0;
203
- }
204
- /**
205
- * Handle position update from hub
206
- */
207
- updatePosition(position) {
208
- const oldPosition = this._position;
209
- this._position = position;
210
- if (oldPosition !== position) {
211
- this.emit("rotate", position);
212
- }
213
- }
214
- /**
215
- * Handle speed update from hub
216
- */
217
- updateSpeed(speed) {
218
- const oldSpeed = this._speed;
219
- this._speed = speed;
220
- if (oldSpeed !== speed) {
221
- this.emit("speed", speed);
222
- }
223
- }
224
- }
225
- exports.TachoMotor = TachoMotor;
226
- // ============================================================================
227
- // Absolute Motor (with absolute position support)
228
- // ============================================================================
229
- /**
230
- * Absolute motor - motor with absolute position capability
231
- */
232
- class AbsoluteMotor extends TachoMotor {
233
- constructor(hub, portInfo) {
234
- super(hub, portInfo);
235
- this._absolutePosition = 0;
236
- }
237
- /**
238
- * Get absolute position (degrees from home position)
239
- */
240
- get absolutePosition() {
241
- return this._absolutePosition;
242
- }
243
- /**
244
- * Subscribe to absolute position updates
245
- */
246
- async subscribeAbsolutePosition() {
247
- if (this._hub instanceof hub_1.LWP3Hub) {
248
- await this._hub.subscribe(this._portId, MotorMode.ABSOLUTE_POSITION);
249
- }
250
- }
251
- /**
252
- * Go to absolute position
253
- */
254
- async gotoPosition(position, speed, maxPower = 100, endState = types_1.BrakingStyle.BRAKE) {
255
- if (this._hub instanceof hub_1.LWP3Hub) {
256
- await this._hub.motorGotoPosition(this._portId, position, speed, maxPower, endState);
257
- }
258
- }
259
- /**
260
- * Go to zero position
261
- */
262
- async gotoZero(speed = 50, maxPower = 100, endState = types_1.BrakingStyle.BRAKE) {
263
- await this.gotoPosition(0, speed, maxPower, endState);
264
- }
265
- /**
266
- * Handle absolute position update from hub
267
- */
268
- updateAbsolutePosition(position) {
269
- const oldPosition = this._absolutePosition;
270
- this._absolutePosition = position;
271
- if (oldPosition !== position) {
272
- this.emit("absolutePosition", position);
273
- }
274
- }
275
- }
276
- exports.AbsoluteMotor = AbsoluteMotor;
277
- // ============================================================================
278
- // Specific Motor Types
279
- // ============================================================================
280
- /**
281
- * Medium Linear Motor
282
- */
283
- class MediumLinearMotor extends TachoMotor {
284
- }
285
- exports.MediumLinearMotor = MediumLinearMotor;
286
- /**
287
- * Move Hub Medium Linear Motor
288
- */
289
- class MoveHubMediumLinearMotor extends TachoMotor {
290
- }
291
- exports.MoveHubMediumLinearMotor = MoveHubMediumLinearMotor;
292
- /**
293
- * Technic Large Linear Motor
294
- */
295
- class TechnicLargeLinearMotor extends AbsoluteMotor {
296
- }
297
- exports.TechnicLargeLinearMotor = TechnicLargeLinearMotor;
298
- /**
299
- * Technic XLarge Linear Motor
300
- */
301
- class TechnicXLargeLinearMotor extends AbsoluteMotor {
302
- }
303
- exports.TechnicXLargeLinearMotor = TechnicXLargeLinearMotor;
304
- /**
305
- * Technic Medium Angular Motor
306
- */
307
- class TechnicMediumAngularMotor extends AbsoluteMotor {
308
- }
309
- exports.TechnicMediumAngularMotor = TechnicMediumAngularMotor;
310
- /**
311
- * Technic Large Angular Motor
312
- */
313
- class TechnicLargeAngularMotor extends AbsoluteMotor {
314
- }
315
- exports.TechnicLargeAngularMotor = TechnicLargeAngularMotor;
316
- /**
317
- * Technic Small Angular Motor
318
- */
319
- class TechnicSmallAngularMotor extends AbsoluteMotor {
320
- }
321
- exports.TechnicSmallAngularMotor = TechnicSmallAngularMotor;
322
- // ============================================================================
323
- // WeDo 2.0 Motor
324
- // ============================================================================
325
- /**
326
- * WeDo 2.0 Medium Motor
327
- */
328
- class WeDo2MediumMotor extends device_1.Device {
329
- constructor(hub, portInfo) {
330
- super(hub, portInfo);
331
- }
332
- /**
333
- * Subscribe to motor updates (not applicable for WeDo motors)
334
- */
335
- async subscribe(_mode) {
336
- // WeDo motors don't have sensor feedback
337
- }
338
- /**
339
- * Set motor power (-100 to 100)
340
- */
341
- async setPower(power) {
342
- power = Math.max(-100, Math.min(100, power));
343
- if (this._hub instanceof hub_1.WeDo2Hub) {
344
- await this._hub.motorPower(this._portId, power);
345
- }
346
- }
347
- /**
348
- * Stop the motor
349
- */
350
- async stop() {
351
- await this.setPower(0);
352
- }
353
- }
354
- exports.WeDo2MediumMotor = WeDo2MediumMotor;
355
- // ============================================================================
356
- // Duplo Train Motor
357
- // ============================================================================
358
- /**
359
- * Duplo Train Base Motor
360
- */
361
- class DuploTrainMotor extends BasicMotor {
362
- constructor(hub, portInfo) {
363
- super(hub, portInfo);
364
- }
365
- }
366
- exports.DuploTrainMotor = DuploTrainMotor;
367
- //# sourceMappingURL=motor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"motor.js","sourceRoot":"","sources":["../../../src/devices/motor.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import { TachoMotor } from "./tachomotor";
2
- import { IDeviceInterface } from "../interfaces";
3
- /**
4
- * @class MoveHubMediumLinearMotor
5
- * @extends TachoMotor
6
- */
7
- export declare class MoveHubMediumLinearMotor extends TachoMotor {
8
- constructor(hub: IDeviceInterface, portId: number);
9
- }
@@ -1,12 +0,0 @@
1
- import { TachoMotor } from "./tachomotor";
2
- import * as Consts from "../consts";
3
- /**
4
- * @class MoveHubMediumLinearMotor
5
- * @extends TachoMotor
6
- */
7
- export class MoveHubMediumLinearMotor extends TachoMotor {
8
- constructor(hub, portId) {
9
- super(hub, portId, {}, Consts.DeviceType.MOVE_HUB_MEDIUM_LINEAR_MOTOR);
10
- }
11
- }
12
- //# sourceMappingURL=movehubmediumlinearmotor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"movehubmediumlinearmotor.js","sourceRoot":"","sources":["../../../src/devices/movehubmediumlinearmotor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAI1C,OAAO,KAAK,MAAM,MAAM,WAAW,CAAC;AAEpC;;;GAGG;AACH,MAAM,OAAO,wBAAyB,SAAQ,UAAU;IAEpD,YAAa,GAAqB,EAAE,MAAc;QAC9C,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,4BAA4B,CAAC,CAAC;IAC3E,CAAC;CAEJ"}
@@ -1,16 +0,0 @@
1
- import { Device } from "./device";
2
- import { IDeviceInterface } from "../interfaces";
3
- /**
4
- * @class MoveHubTiltSensor
5
- * @extends Device
6
- */
7
- export declare class MoveHubTiltSensor extends Device {
8
- constructor(hub: IDeviceInterface, portId: number);
9
- receive(message: Buffer): void;
10
- }
11
- export declare enum Mode {
12
- TILT = 0
13
- }
14
- export declare const ModeMap: {
15
- [event: string]: number;
16
- };
@@ -1,36 +0,0 @@
1
- import { Device } from "./device";
2
- import * as Consts from "../consts";
3
- /**
4
- * @class MoveHubTiltSensor
5
- * @extends Device
6
- */
7
- export class MoveHubTiltSensor extends Device {
8
- constructor(hub, portId) {
9
- super(hub, portId, ModeMap, Consts.DeviceType.MOVE_HUB_TILT_SENSOR);
10
- }
11
- receive(message) {
12
- const mode = this._mode;
13
- switch (mode) {
14
- case Mode.TILT:
15
- /**
16
- * Emits when a tilt sensor is activated.
17
- * @event MoveHubTiltSensor#tilt
18
- * @type {object}
19
- * @param {number} x
20
- * @param {number} y
21
- */
22
- const x = -message.readInt8(4);
23
- const y = message.readInt8(5);
24
- this.notify("tilt", { x, y });
25
- break;
26
- }
27
- }
28
- }
29
- export var Mode;
30
- (function (Mode) {
31
- Mode[Mode["TILT"] = 0] = "TILT";
32
- })(Mode || (Mode = {}));
33
- export const ModeMap = {
34
- "tilt": Mode.TILT
35
- };
36
- //# sourceMappingURL=movehubtiltsensor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"movehubtiltsensor.js","sourceRoot":"","sources":["../../../src/devices/movehubtiltsensor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAIlC,OAAO,KAAK,MAAM,MAAM,WAAW,CAAC;AAEpC;;;GAGG;AACH,MAAM,OAAO,iBAAkB,SAAQ,MAAM;IAEzC,YAAa,GAAqB,EAAE,MAAc;QAC9C,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;IACxE,CAAC;IAEM,OAAO,CAAE,OAAe;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QAExB,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,IAAI,CAAC,IAAI;gBACV;;;;;;mBAMG;gBACH,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC/B,MAAM,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC9B,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC9B,MAAM;QACd,CAAC;IACL,CAAC;CAEJ;AAED,MAAM,CAAN,IAAY,IAEX;AAFD,WAAY,IAAI;IACZ,+BAAW,CAAA;AACf,CAAC,EAFW,IAAI,KAAJ,IAAI,QAEf;AAED,MAAM,CAAC,MAAM,OAAO,GAA8B;IAC9C,MAAM,EAAE,IAAI,CAAC,IAAI;CACpB,CAAC"}
@@ -1,17 +0,0 @@
1
- import { Device } from "./device";
2
- import { IDeviceInterface } from "../interfaces";
3
- /**
4
- * @class PiezoBuzzer
5
- * @extends Device
6
- */
7
- export declare class PiezoBuzzer extends Device {
8
- constructor(hub: IDeviceInterface, portId: number);
9
- /**
10
- * Play a tone on the Hub's in-built buzzer
11
- * @method PiezoBuzzer#playTone
12
- * @param {number} frequency
13
- * @param {number} time How long the tone should play for (in milliseconds).
14
- * @returns {Promise} Resolved upon successful completion of command (ie. once the tone has finished playing).
15
- */
16
- playTone(frequency: number, time: number): Promise<unknown>;
17
- }
@@ -1,28 +0,0 @@
1
- import { Device } from "./device";
2
- import * as Consts from "../consts";
3
- /**
4
- * @class PiezoBuzzer
5
- * @extends Device
6
- */
7
- export class PiezoBuzzer extends Device {
8
- constructor(hub, portId) {
9
- super(hub, portId, {}, Consts.DeviceType.PIEZO_BUZZER);
10
- }
11
- /**
12
- * Play a tone on the Hub's in-built buzzer
13
- * @method PiezoBuzzer#playTone
14
- * @param {number} frequency
15
- * @param {number} time How long the tone should play for (in milliseconds).
16
- * @returns {Promise} Resolved upon successful completion of command (ie. once the tone has finished playing).
17
- */
18
- playTone(frequency, time) {
19
- return new Promise((resolve) => {
20
- const data = Buffer.from([0x05, 0x02, 0x04, 0x00, 0x00, 0x00, 0x00]);
21
- data.writeUInt16LE(frequency, 3);
22
- data.writeUInt16LE(time, 5);
23
- this.send(data, Consts.BLECharacteristic.WEDO2_MOTOR_VALUE_WRITE);
24
- global.setTimeout(resolve, time);
25
- });
26
- }
27
- }
28
- //# sourceMappingURL=piezobuzzer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"piezobuzzer.js","sourceRoot":"","sources":["../../../src/devices/piezobuzzer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAIlC,OAAO,KAAK,MAAM,MAAM,WAAW,CAAC;AAEpC;;;GAGG;AACH,MAAM,OAAO,WAAY,SAAQ,MAAM;IAGnC,YAAa,GAAqB,EAAE,MAAc;QAC9C,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAC3D,CAAC;IAGD;;;;;;OAMG;IACI,QAAQ,CAAE,SAAiB,EAAE,IAAY;QAC5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YACrE,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;YACjC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,CAAC;YAClE,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACP,CAAC;CAGJ"}
@@ -1,19 +0,0 @@
1
- import { Device } from "./device";
2
- import { IDeviceInterface } from "../interfaces";
3
- /**
4
- * @class RemoteControlButton
5
- * @extends Device
6
- */
7
- export declare class RemoteControlButton extends Device {
8
- constructor(hub: IDeviceInterface, portId: number);
9
- receive(message: Buffer): void;
10
- }
11
- export declare enum Mode {
12
- BUTTON_EVENTS = 0
13
- }
14
- export declare const ModeMap: {
15
- [event: string]: number;
16
- };
17
- export declare const ButtonState: {
18
- [state: string]: number;
19
- };
@@ -1,40 +0,0 @@
1
- import { Device } from "./device";
2
- import * as Consts from "../consts";
3
- /**
4
- * @class RemoteControlButton
5
- * @extends Device
6
- */
7
- export class RemoteControlButton extends Device {
8
- constructor(hub, portId) {
9
- super(hub, portId, ModeMap, Consts.DeviceType.REMOTE_CONTROL_BUTTON);
10
- }
11
- receive(message) {
12
- const mode = this._mode;
13
- switch (mode) {
14
- case Mode.BUTTON_EVENTS:
15
- /**
16
- * Emits when a button on the remote is pressed or released.
17
- * @event RemoteControlButton#remoteButton
18
- * @type {object}
19
- * @param {number} event
20
- */
21
- const event = message[4];
22
- this.notify("remoteButton", { event });
23
- break;
24
- }
25
- }
26
- }
27
- export var Mode;
28
- (function (Mode) {
29
- Mode[Mode["BUTTON_EVENTS"] = 0] = "BUTTON_EVENTS";
30
- })(Mode || (Mode = {}));
31
- export const ModeMap = {
32
- "remoteButton": Mode.BUTTON_EVENTS
33
- };
34
- export const ButtonState = {
35
- "UP": 0x01,
36
- "DOWN": 0xff,
37
- "STOP": 0x7f,
38
- "RELEASED": 0x00,
39
- };
40
- //# sourceMappingURL=remotecontrolbutton.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"remotecontrolbutton.js","sourceRoot":"","sources":["../../../src/devices/remotecontrolbutton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAIlC,OAAO,KAAK,MAAM,MAAM,WAAW,CAAC;AAEpC;;;GAGG;AACH,MAAM,OAAO,mBAAoB,SAAQ,MAAM;IAE3C,YAAa,GAAqB,EAAE,MAAc;QAC9C,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;IACzE,CAAC;IAEM,OAAO,CAAE,OAAe;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QAExB,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,IAAI,CAAC,aAAa;gBACnB;;;;;mBAKG;gBACH,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBACzB,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;gBACvC,MAAM;QACd,CAAC;IACL,CAAC;CAEJ;AAED,MAAM,CAAN,IAAY,IAEX;AAFD,WAAY,IAAI;IACZ,iDAAoB,CAAA;AACxB,CAAC,EAFW,IAAI,KAAJ,IAAI,QAEf;AAED,MAAM,CAAC,MAAM,OAAO,GAA8B;IAC9C,cAAc,EAAE,IAAI,CAAC,aAAa;CACrC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAA8B;IAClD,IAAI,EAAE,IAAI;IACV,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,IAAI;IACZ,UAAU,EAAE,IAAI;CACnB,CAAC"}