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 +0,0 @@
1
- {"version":3,"file":"hub.js","sourceRoot":"","sources":["../../src/hub.ts"],"names":[],"mappings":"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"}
@@ -1,162 +0,0 @@
1
- import { EventEmitter } from "events";
2
- import { IBLEAbstraction } from "../interfaces";
3
- import { Device } from "../devices/device";
4
- import * as Consts from "../consts";
5
- /**
6
- * @class BaseHub
7
- * @extends EventEmitter
8
- */
9
- export declare class BaseHub extends EventEmitter {
10
- protected _attachedDevices: {
11
- [portId: number]: Device;
12
- };
13
- protected _name: string;
14
- protected _firmwareVersion: string;
15
- protected _hardwareVersion: string;
16
- protected _primaryMACAddress: string;
17
- protected _batteryLevel: number;
18
- protected _rssi: number;
19
- protected _portMap: {
20
- [portName: string]: number;
21
- };
22
- protected _virtualPorts: number[];
23
- protected _bleDevice: IBLEAbstraction;
24
- private _type;
25
- private _attachCallbacks;
26
- constructor(bleDevice: IBLEAbstraction, portMap?: {
27
- [portName: string]: number;
28
- }, type?: Consts.HubType);
29
- /**
30
- * @readonly
31
- * @property {string} name Name of the hub
32
- */
33
- get name(): any;
34
- /**
35
- * @readonly
36
- * @property {string} connected Connected status
37
- */
38
- get connected(): any;
39
- /**
40
- * @readonly
41
- * @property {string} connecting Connecting status
42
- */
43
- get connecting(): any;
44
- /**
45
- * @readonly
46
- * @property {string} type Hub type
47
- */
48
- get type(): Consts.HubType;
49
- /**
50
- * @readonly
51
- * @property {string[]} ports Array of port names
52
- */
53
- get ports(): string[];
54
- /**
55
- * @readonly
56
- * @property {string} firmwareVersion Firmware version of the hub
57
- */
58
- get firmwareVersion(): string;
59
- /**
60
- * @readonly
61
- * @property {string} hardwareVersion Hardware version of the hub
62
- */
63
- get hardwareVersion(): string;
64
- /**
65
- * @readonly
66
- * @property {string} primaryMACAddress Primary MAC address of the hub
67
- */
68
- get primaryMACAddress(): string;
69
- /**
70
- * @readonly
71
- * @property {string} uuid UUID of the hub
72
- */
73
- get uuid(): any;
74
- /**
75
- * @readonly
76
- * @property {number} batteryLevel Battery level of the hub (Percentage between 0-100)
77
- */
78
- get batteryLevel(): number;
79
- /**
80
- * @readonly
81
- * @property {number} rssi Signal strength of the hub
82
- */
83
- get rssi(): number;
84
- /**
85
- * Connect to the Hub.
86
- * @method Hub#connect
87
- * @returns {Promise} Resolved upon successful connect.
88
- */
89
- connect(): any;
90
- /**
91
- * Disconnect the Hub.
92
- * @method Hub#disconnect
93
- * @returns {Promise} Resolved upon successful disconnect.
94
- */
95
- disconnect(): any;
96
- /**
97
- * Retrieves the device attached to a given port.
98
- * @method Hub#getDeviceAtPort
99
- * @param {string} portName The name of the port to retrieve the device from.
100
- * @returns {Device | undefined} The device attached to the port.
101
- */
102
- getDeviceAtPort(portName: string): any;
103
- /**
104
- * Retrieves the device attached to a given port, waiting until one is attached if there isn't one.
105
- *
106
- * Note: If a device is never attached, the returned promise may never resolve.
107
- * @method Hub#waitForDeviceAtPort
108
- * @param {string} portName The name of the port to retrieve the device from.
109
- * @returns {Promise} Resolved once a device is attached, or resolved immediately if a device is already attached.
110
- */
111
- waitForDeviceAtPort(portName: string): Promise<unknown>;
112
- /**
113
- * Retrieves all attached devices.
114
- * @method Hub#getDevices
115
- * @returns {Device[]} Array of all attached devices.
116
- */
117
- getDevices(): Device[];
118
- /**
119
- * Retrieves an array of devices of the specified type.
120
- * @method Hub#getDevicesByType
121
- * @param {number} deviceType The device type to lookup.
122
- * @returns {Device[]} Array of all devices of the specified type.
123
- */
124
- getDevicesByType(deviceType: number): Device[];
125
- /**
126
- * Retrieves the first device attached of the specified type, waiting until one is attached if there isn't one.
127
- *
128
- * Note: If a device is never attached, the returned promise may never resolve.
129
- * @method Hub#waitForDeviceByType
130
- * @param {number} deviceType The device type to lookup.
131
- * @returns {Promise} Resolved once a device is attached, or resolved immediately if a device is already attached.
132
- */
133
- waitForDeviceByType(deviceType: number): Promise<unknown>;
134
- getPortNameForPortId(portId: number): string | undefined;
135
- isPortVirtual(portId: number): boolean;
136
- /**
137
- * Sleep a given amount of time.
138
- *
139
- * Note: This is a helper method to make it easier to add delays into a chain of commands.
140
- * @method Hub#sleep
141
- * @param {number} delay How long to sleep (in milliseconds).
142
- * @returns {Promise} Resolved after the delay is finished.
143
- */
144
- sleep(delay: number): Promise<unknown>;
145
- /**
146
- * Wait until a given list of concurrently running commands are complete.
147
- *
148
- * Note: This is a helper method to make it easier to wait for concurrent commands to complete.
149
- * @method Hub#wait
150
- * @param {Array<Promise<any>>} commands Array of executing commands.
151
- * @returns {Promise} Resolved after the commands are finished.
152
- */
153
- wait(commands: Promise<any>[]): Promise<any[]>;
154
- send(message: Buffer, uuid: string): Promise<void>;
155
- subscribe(portId: number, deviceType: number, mode: number): void;
156
- unsubscribe(portId: number, deviceType: number, mode: number): void;
157
- manuallyAttachDevice(deviceType: number, portId: number): any;
158
- protected _attachDevice(device: Device): void;
159
- protected _detachDevice(device: Device): void;
160
- protected _createDevice(deviceType: number, portId: number): any;
161
- protected _getDeviceByPortId(portId: number): Device;
162
- }
@@ -1,392 +0,0 @@
1
- import { EventEmitter } from "events";
2
- import { ColorDistanceSensor } from "../devices/colordistancesensor";
3
- import { CurrentSensor } from "../devices/currentsensor";
4
- import { Device } from "../devices/device";
5
- import { DuploTrainBaseColorSensor } from "../devices/duplotrainbasecolorsensor";
6
- import { DuploTrainBaseMotor } from "../devices/duplotrainbasemotor";
7
- import { DuploTrainBaseSpeaker } from "../devices/duplotrainbasespeaker";
8
- import { DuploTrainBaseSpeedometer } from "../devices/duplotrainbasespeedometer";
9
- import { HubLED } from "../devices/hubled";
10
- import { Light } from "../devices/light";
11
- import { MarioAccelerometer } from "../devices/marioaccelerometer";
12
- import { MarioBarcodeSensor } from "../devices/mariobarcodesensor";
13
- import { MarioPantsSensor } from "../devices/mariopantssensor";
14
- import { MediumLinearMotor } from "../devices/mediumlinearmotor";
15
- import { MotionSensor } from "../devices/motionsensor";
16
- import { MoveHubMediumLinearMotor } from "../devices/movehubmediumlinearmotor";
17
- import { MoveHubTiltSensor } from "../devices/movehubtiltsensor";
18
- import { PiezoBuzzer } from "../devices/piezobuzzer";
19
- import { RemoteControlButton } from "../devices/remotecontrolbutton";
20
- import { SimpleMediumLinearMotor } from "../devices/simplemediumlinearmotor";
21
- import { TechnicColorSensor } from "../devices/techniccolorsensor";
22
- import { TechnicDistanceSensor } from "../devices/technicdistancesensor";
23
- import { TechnicForceSensor } from "../devices/technicforcesensor";
24
- import { TechnicLargeAngularMotor } from "../devices/techniclargeangularmotor";
25
- import { TechnicLargeLinearMotor } from "../devices/techniclargelinearmotor";
26
- import { TechnicSmallAngularMotor } from "../devices/technicsmallangularmotor";
27
- import { TechnicMediumAngularMotor } from "../devices/technicmediumangularmotor";
28
- import { TechnicMediumHubAccelerometerSensor } from "../devices/technicmediumhubaccelerometersensor";
29
- import { TechnicMediumHubGyroSensor } from "../devices/technicmediumhubgyrosensor";
30
- import { TechnicMediumHubTiltSensor } from "../devices/technicmediumhubtiltsensor";
31
- import { TechnicXLargeLinearMotor } from "../devices/technicxlargelinearmotor";
32
- import { TiltSensor } from "../devices/tiltsensor";
33
- import { TrainMotor } from "../devices/trainmotor";
34
- import { VoltageSensor } from "../devices/voltagesensor";
35
- import * as Consts from "../consts";
36
- import Debug from "debug";
37
- import { Technic3x3ColorLightMatrix } from "../devices/technic3x3colorlightmatrix";
38
- const debug = Debug("basehub");
39
- /**
40
- * @class BaseHub
41
- * @extends EventEmitter
42
- */
43
- export class BaseHub extends EventEmitter {
44
- constructor(bleDevice, portMap = {}, type = Consts.HubType.UNKNOWN) {
45
- super();
46
- this._attachedDevices = {};
47
- this._name = "";
48
- this._firmwareVersion = "0.0.00.0000";
49
- this._hardwareVersion = "0.0.00.0000";
50
- this._primaryMACAddress = "00:00:00:00:00:00";
51
- this._batteryLevel = 100;
52
- this._rssi = -60;
53
- this._portMap = {};
54
- this._virtualPorts = [];
55
- this._attachCallbacks = [];
56
- this.setMaxListeners(23); // Technic Medium Hub has 9 built in devices + 4 external ports. Node.js throws a warning after 10 attached event listeners.
57
- this._type = type;
58
- this._bleDevice = bleDevice;
59
- this._portMap = Object.assign({}, portMap);
60
- bleDevice.on("disconnect", () => {
61
- /**
62
- * Emits when the hub is disconnected.
63
- * @event Hub#disconnect
64
- */
65
- this.emit("disconnect");
66
- });
67
- }
68
- /**
69
- * @readonly
70
- * @property {string} name Name of the hub
71
- */
72
- get name() {
73
- return this._bleDevice.name;
74
- }
75
- /**
76
- * @readonly
77
- * @property {string} connected Connected status
78
- */
79
- get connected() {
80
- return this._bleDevice.connected;
81
- }
82
- /**
83
- * @readonly
84
- * @property {string} connecting Connecting status
85
- */
86
- get connecting() {
87
- return this._bleDevice.connecting;
88
- }
89
- /**
90
- * @readonly
91
- * @property {string} type Hub type
92
- */
93
- get type() {
94
- return this._type;
95
- }
96
- /**
97
- * @readonly
98
- * @property {string[]} ports Array of port names
99
- */
100
- get ports() {
101
- return Object.keys(this._portMap);
102
- }
103
- /**
104
- * @readonly
105
- * @property {string} firmwareVersion Firmware version of the hub
106
- */
107
- get firmwareVersion() {
108
- return this._firmwareVersion;
109
- }
110
- /**
111
- * @readonly
112
- * @property {string} hardwareVersion Hardware version of the hub
113
- */
114
- get hardwareVersion() {
115
- return this._hardwareVersion;
116
- }
117
- /**
118
- * @readonly
119
- * @property {string} primaryMACAddress Primary MAC address of the hub
120
- */
121
- get primaryMACAddress() {
122
- return this._primaryMACAddress;
123
- }
124
- /**
125
- * @readonly
126
- * @property {string} uuid UUID of the hub
127
- */
128
- get uuid() {
129
- return this._bleDevice.uuid;
130
- }
131
- /**
132
- * @readonly
133
- * @property {number} batteryLevel Battery level of the hub (Percentage between 0-100)
134
- */
135
- get batteryLevel() {
136
- return this._batteryLevel;
137
- }
138
- /**
139
- * @readonly
140
- * @property {number} rssi Signal strength of the hub
141
- */
142
- get rssi() {
143
- return this._rssi;
144
- }
145
- /**
146
- * Connect to the Hub.
147
- * @method Hub#connect
148
- * @returns {Promise} Resolved upon successful connect.
149
- */
150
- connect() {
151
- if (this._bleDevice.connecting) {
152
- throw new Error("Already connecting");
153
- }
154
- else if (this._bleDevice.connected) {
155
- throw new Error("Already connected");
156
- }
157
- return this._bleDevice.connect();
158
- }
159
- /**
160
- * Disconnect the Hub.
161
- * @method Hub#disconnect
162
- * @returns {Promise} Resolved upon successful disconnect.
163
- */
164
- disconnect() {
165
- return this._bleDevice.disconnect();
166
- }
167
- /**
168
- * Retrieves the device attached to a given port.
169
- * @method Hub#getDeviceAtPort
170
- * @param {string} portName The name of the port to retrieve the device from.
171
- * @returns {Device | undefined} The device attached to the port.
172
- */
173
- getDeviceAtPort(portName) {
174
- const portId = this._portMap[portName];
175
- if (portId !== undefined) {
176
- return this._attachedDevices[portId];
177
- }
178
- else {
179
- return undefined;
180
- }
181
- }
182
- /**
183
- * Retrieves the device attached to a given port, waiting until one is attached if there isn't one.
184
- *
185
- * Note: If a device is never attached, the returned promise may never resolve.
186
- * @method Hub#waitForDeviceAtPort
187
- * @param {string} portName The name of the port to retrieve the device from.
188
- * @returns {Promise} Resolved once a device is attached, or resolved immediately if a device is already attached.
189
- */
190
- waitForDeviceAtPort(portName) {
191
- return new Promise((resolve) => {
192
- const existingDevice = this.getDeviceAtPort(portName);
193
- if (existingDevice) {
194
- return resolve(existingDevice);
195
- }
196
- this._attachCallbacks.push((device) => {
197
- if (device.portName === portName) {
198
- resolve(device);
199
- return true;
200
- }
201
- else {
202
- return false;
203
- }
204
- });
205
- });
206
- }
207
- /**
208
- * Retrieves all attached devices.
209
- * @method Hub#getDevices
210
- * @returns {Device[]} Array of all attached devices.
211
- */
212
- getDevices() {
213
- return Object.values(this._attachedDevices);
214
- }
215
- /**
216
- * Retrieves an array of devices of the specified type.
217
- * @method Hub#getDevicesByType
218
- * @param {number} deviceType The device type to lookup.
219
- * @returns {Device[]} Array of all devices of the specified type.
220
- */
221
- getDevicesByType(deviceType) {
222
- return this.getDevices().filter((device) => device.type === deviceType);
223
- }
224
- /**
225
- * Retrieves the first device attached of the specified type, waiting until one is attached if there isn't one.
226
- *
227
- * Note: If a device is never attached, the returned promise may never resolve.
228
- * @method Hub#waitForDeviceByType
229
- * @param {number} deviceType The device type to lookup.
230
- * @returns {Promise} Resolved once a device is attached, or resolved immediately if a device is already attached.
231
- */
232
- waitForDeviceByType(deviceType) {
233
- return new Promise((resolve) => {
234
- const existingDevices = this.getDevicesByType(deviceType);
235
- if (existingDevices.length >= 1) {
236
- return resolve(existingDevices[0]);
237
- }
238
- this._attachCallbacks.push((device) => {
239
- if (device.type === deviceType) {
240
- resolve(device);
241
- return true;
242
- }
243
- else {
244
- return false;
245
- }
246
- });
247
- });
248
- }
249
- getPortNameForPortId(portId) {
250
- for (const port of Object.keys(this._portMap)) {
251
- if (this._portMap[port] === portId) {
252
- return port;
253
- }
254
- }
255
- return;
256
- }
257
- isPortVirtual(portId) {
258
- return (this._virtualPorts.indexOf(portId) > -1);
259
- }
260
- /**
261
- * Sleep a given amount of time.
262
- *
263
- * Note: This is a helper method to make it easier to add delays into a chain of commands.
264
- * @method Hub#sleep
265
- * @param {number} delay How long to sleep (in milliseconds).
266
- * @returns {Promise} Resolved after the delay is finished.
267
- */
268
- sleep(delay) {
269
- return new Promise((resolve) => {
270
- global.setTimeout(resolve, delay);
271
- });
272
- }
273
- /**
274
- * Wait until a given list of concurrently running commands are complete.
275
- *
276
- * Note: This is a helper method to make it easier to wait for concurrent commands to complete.
277
- * @method Hub#wait
278
- * @param {Array<Promise<any>>} commands Array of executing commands.
279
- * @returns {Promise} Resolved after the commands are finished.
280
- */
281
- wait(commands) {
282
- return Promise.all(commands);
283
- }
284
- send(message, uuid) {
285
- return Promise.resolve();
286
- }
287
- subscribe(portId, deviceType, mode) {
288
- // NK Do nothing here
289
- }
290
- unsubscribe(portId, deviceType, mode) {
291
- // NK Do nothing here
292
- }
293
- manuallyAttachDevice(deviceType, portId) {
294
- if (!this._attachedDevices[portId]) {
295
- debug(`No device attached to portId ${portId}, creating and attaching device type ${deviceType}`);
296
- const device = this._createDevice(deviceType, portId);
297
- this._attachDevice(device);
298
- return device;
299
- }
300
- else {
301
- if (this._attachedDevices[portId].type === deviceType) {
302
- debug(`Device of ${deviceType} already attached to portId ${portId}, returning existing device`);
303
- return this._attachedDevices[portId];
304
- }
305
- else {
306
- throw new Error(`Already a different type of device attached to portId ${portId}. Only use this method when you are certain what's attached.`);
307
- }
308
- }
309
- }
310
- _attachDevice(device) {
311
- if (this._attachedDevices[device.portId] && this._attachedDevices[device.portId].type === device.type) {
312
- return;
313
- }
314
- this._attachedDevices[device.portId] = device;
315
- /**
316
- * Emits when a device is attached to the Hub.
317
- * @event Hub#attach
318
- * @param {Device} device
319
- */
320
- this.emit("attach", device);
321
- debug(`Attached device type ${device.type} (${Consts.DeviceTypeNames[device.type]}) on port ${device.portName} (${device.portId})`);
322
- let i = this._attachCallbacks.length;
323
- while (i--) {
324
- const callback = this._attachCallbacks[i];
325
- if (callback(device)) {
326
- this._attachCallbacks.splice(i, 1);
327
- }
328
- }
329
- }
330
- _detachDevice(device) {
331
- delete this._attachedDevices[device.portId];
332
- /**
333
- * Emits when a device is detached from the Hub.
334
- * @event Hub#detach
335
- * @param {Device} device
336
- */
337
- this.emit("detach", device);
338
- debug(`Detached device type ${device.type} (${Consts.DeviceTypeNames[device.type]}) on port ${device.portName} (${device.portId})`);
339
- }
340
- _createDevice(deviceType, portId) {
341
- let constructor;
342
- // NK TODO: This needs to go in a better place
343
- const deviceConstructors = {
344
- [Consts.DeviceType.LIGHT]: Light,
345
- [Consts.DeviceType.TRAIN_MOTOR]: TrainMotor,
346
- [Consts.DeviceType.SIMPLE_MEDIUM_LINEAR_MOTOR]: SimpleMediumLinearMotor,
347
- [Consts.DeviceType.MOVE_HUB_MEDIUM_LINEAR_MOTOR]: MoveHubMediumLinearMotor,
348
- [Consts.DeviceType.MOTION_SENSOR]: MotionSensor,
349
- [Consts.DeviceType.TILT_SENSOR]: TiltSensor,
350
- [Consts.DeviceType.MOVE_HUB_TILT_SENSOR]: MoveHubTiltSensor,
351
- [Consts.DeviceType.PIEZO_BUZZER]: PiezoBuzzer,
352
- [Consts.DeviceType.TECHNIC_COLOR_SENSOR]: TechnicColorSensor,
353
- [Consts.DeviceType.TECHNIC_DISTANCE_SENSOR]: TechnicDistanceSensor,
354
- [Consts.DeviceType.TECHNIC_FORCE_SENSOR]: TechnicForceSensor,
355
- [Consts.DeviceType.TECHNIC_MEDIUM_HUB_TILT_SENSOR]: TechnicMediumHubTiltSensor,
356
- [Consts.DeviceType.TECHNIC_MEDIUM_HUB_GYRO_SENSOR]: TechnicMediumHubGyroSensor,
357
- [Consts.DeviceType.TECHNIC_MEDIUM_HUB_ACCELEROMETER]: TechnicMediumHubAccelerometerSensor,
358
- [Consts.DeviceType.MEDIUM_LINEAR_MOTOR]: MediumLinearMotor,
359
- [Consts.DeviceType.TECHNIC_SMALL_ANGULAR_MOTOR]: TechnicSmallAngularMotor,
360
- [Consts.DeviceType.TECHNIC_MEDIUM_ANGULAR_MOTOR]: TechnicMediumAngularMotor,
361
- [Consts.DeviceType.TECHNIC_LARGE_ANGULAR_MOTOR]: TechnicLargeAngularMotor,
362
- [Consts.DeviceType.TECHNIC_LARGE_LINEAR_MOTOR]: TechnicLargeLinearMotor,
363
- [Consts.DeviceType.TECHNIC_XLARGE_LINEAR_MOTOR]: TechnicXLargeLinearMotor,
364
- [Consts.DeviceType.COLOR_DISTANCE_SENSOR]: ColorDistanceSensor,
365
- [Consts.DeviceType.VOLTAGE_SENSOR]: VoltageSensor,
366
- [Consts.DeviceType.CURRENT_SENSOR]: CurrentSensor,
367
- [Consts.DeviceType.REMOTE_CONTROL_BUTTON]: RemoteControlButton,
368
- [Consts.DeviceType.HUB_LED]: HubLED,
369
- [Consts.DeviceType.DUPLO_TRAIN_BASE_COLOR_SENSOR]: DuploTrainBaseColorSensor,
370
- [Consts.DeviceType.DUPLO_TRAIN_BASE_MOTOR]: DuploTrainBaseMotor,
371
- [Consts.DeviceType.DUPLO_TRAIN_BASE_SPEAKER]: DuploTrainBaseSpeaker,
372
- [Consts.DeviceType.DUPLO_TRAIN_BASE_SPEEDOMETER]: DuploTrainBaseSpeedometer,
373
- [Consts.DeviceType.MARIO_ACCELEROMETER]: MarioAccelerometer,
374
- [Consts.DeviceType.MARIO_BARCODE_SENSOR]: MarioBarcodeSensor,
375
- [Consts.DeviceType.MARIO_PANTS_SENSOR]: MarioPantsSensor,
376
- [Consts.DeviceType.TECHNIC_MEDIUM_ANGULAR_MOTOR_GREY]: TechnicMediumAngularMotor,
377
- [Consts.DeviceType.TECHNIC_LARGE_ANGULAR_MOTOR_GREY]: TechnicLargeAngularMotor,
378
- [Consts.DeviceType.TECHNIC_3X3_COLOR_LIGHT_MATRIX]: Technic3x3ColorLightMatrix,
379
- };
380
- constructor = deviceConstructors[deviceType];
381
- if (constructor) {
382
- return new constructor(this, portId, undefined, deviceType);
383
- }
384
- else {
385
- return new Device(this, portId, undefined, deviceType);
386
- }
387
- }
388
- _getDeviceByPortId(portId) {
389
- return this._attachedDevices[portId];
390
- }
391
- }
392
- //# sourceMappingURL=basehub.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"basehub.js","sourceRoot":"","sources":["../../../src/hubs/basehub.ts"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- import { Peripheral } from "@stoprocent/noble";
2
- import { LPF2Hub } from "./lpf2hub";
3
- import { IBLEAbstraction } from "../interfaces";
4
- /**
5
- * The DuploTrainBase is emitted if the discovered device is a Duplo Train Base.
6
- * @class DuploTrainBase
7
- * @extends LPF2Hub
8
- * @extends BaseHub
9
- */
10
- export declare class DuploTrainBase extends LPF2Hub {
11
- static IsDuploTrainBase(peripheral: Peripheral): boolean;
12
- constructor(device: IBLEAbstraction);
13
- connect(): Promise<void>;
14
- }
15
- export declare const PortMap: {
16
- [portName: string]: number;
17
- };
@@ -1,35 +0,0 @@
1
- import { LPF2Hub } from "./lpf2hub";
2
- import * as Consts from "../consts";
3
- import Debug from "debug";
4
- const debug = Debug("duplotrainbase");
5
- /**
6
- * The DuploTrainBase is emitted if the discovered device is a Duplo Train Base.
7
- * @class DuploTrainBase
8
- * @extends LPF2Hub
9
- * @extends BaseHub
10
- */
11
- export class DuploTrainBase extends LPF2Hub {
12
- static IsDuploTrainBase(peripheral) {
13
- return (peripheral.advertisement &&
14
- peripheral.advertisement.serviceUuids &&
15
- peripheral.advertisement.serviceUuids.indexOf(Consts.BLEService.LPF2_HUB.replace(/-/g, "")) >= 0 &&
16
- peripheral.advertisement.manufacturerData &&
17
- peripheral.advertisement.manufacturerData.length > 3 &&
18
- peripheral.advertisement.manufacturerData[3] === Consts.BLEManufacturerData.DUPLO_TRAIN_BASE_ID);
19
- }
20
- constructor(device) {
21
- super(device, PortMap, Consts.HubType.DUPLO_TRAIN_BASE);
22
- debug("Discovered Duplo Train Base");
23
- }
24
- async connect() {
25
- debug("Connecting to Duplo Train Base");
26
- await super.connect();
27
- debug("Connect completed");
28
- }
29
- }
30
- export const PortMap = {
31
- "MOTOR": 0,
32
- "COLOR": 18,
33
- "SPEEDOMETER": 19
34
- };
35
- //# sourceMappingURL=duplotrainbase.js.map