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.
- package/README.md +0 -1
- package/dist/browser/poweredup.js +6193 -0
- package/dist/browser/poweredup.js.map +7 -0
- package/dist/consts.d.ts +40 -0
- package/dist/consts.d.ts.map +1 -1
- package/dist/consts.js +42 -0
- package/dist/consts.js.map +1 -1
- package/dist/devices/absolutemotor.d.ts +8 -6
- package/dist/devices/absolutemotor.d.ts.map +1 -1
- package/dist/devices/absolutemotor.js +24 -31
- package/dist/devices/absolutemotor.js.map +1 -1
- package/dist/devices/basicmotor.d.ts +11 -10
- package/dist/devices/basicmotor.d.ts.map +1 -1
- package/dist/devices/basicmotor.js +16 -22
- package/dist/devices/basicmotor.js.map +1 -1
- package/dist/devices/colordistancesensor.d.ts +13 -12
- package/dist/devices/colordistancesensor.d.ts.map +1 -1
- package/dist/devices/colordistancesensor.js +25 -31
- package/dist/devices/colordistancesensor.js.map +1 -1
- package/dist/devices/device.d.ts +15 -6
- package/dist/devices/device.d.ts.map +1 -1
- package/dist/devices/device.js +209 -21
- package/dist/devices/device.js.map +1 -1
- package/dist/devices/duplotrainbasespeaker.d.ts +4 -4
- package/dist/devices/duplotrainbasespeaker.d.ts.map +1 -1
- package/dist/devices/duplotrainbasespeaker.js +5 -8
- package/dist/devices/duplotrainbasespeaker.js.map +1 -1
- package/dist/devices/hubled.d.ts +5 -4
- package/dist/devices/hubled.d.ts.map +1 -1
- package/dist/devices/hubled.js +24 -24
- package/dist/devices/hubled.js.map +1 -1
- package/dist/devices/light.d.ts +7 -4
- package/dist/devices/light.d.ts.map +1 -1
- package/dist/devices/light.js +11 -17
- package/dist/devices/light.js.map +1 -1
- package/dist/devices/piezobuzzer.d.ts +3 -2
- package/dist/devices/piezobuzzer.d.ts.map +1 -1
- package/dist/devices/piezobuzzer.js +2 -2
- package/dist/devices/piezobuzzer.js.map +1 -1
- package/dist/devices/tachomotor.d.ts +14 -8
- package/dist/devices/tachomotor.d.ts.map +1 -1
- package/dist/devices/tachomotor.js +50 -56
- package/dist/devices/tachomotor.js.map +1 -1
- package/dist/devices/technic3x3colorlightmatrix.d.ts +3 -2
- package/dist/devices/technic3x3colorlightmatrix.d.ts.map +1 -1
- package/dist/devices/technic3x3colorlightmatrix.js +20 -23
- package/dist/devices/technic3x3colorlightmatrix.js.map +1 -1
- package/dist/devices/techniccolorsensor.d.ts +9 -4
- package/dist/devices/techniccolorsensor.d.ts.map +1 -1
- package/dist/devices/techniccolorsensor.js +99 -8
- package/dist/devices/techniccolorsensor.js.map +1 -1
- package/dist/devices/technicdistancesensor.d.ts +1 -1
- package/dist/devices/technicdistancesensor.js +1 -1
- package/dist/devices/technicmediumhubtiltsensor.d.ts +7 -6
- package/dist/devices/technicmediumhubtiltsensor.d.ts.map +1 -1
- package/dist/devices/technicmediumhubtiltsensor.js +9 -18
- package/dist/devices/technicmediumhubtiltsensor.js.map +1 -1
- package/dist/devices/tiltsensor.d.ts +4 -1
- package/dist/devices/tiltsensor.d.ts.map +1 -1
- package/dist/devices/tiltsensor.js +84 -3
- package/dist/devices/tiltsensor.js.map +1 -1
- package/dist/hubs/basehub.d.ts +1 -0
- package/dist/hubs/basehub.d.ts.map +1 -1
- package/dist/hubs/basehub.js +17 -0
- package/dist/hubs/basehub.js.map +1 -1
- package/dist/hubs/lpf2hub.d.ts +1 -0
- package/dist/hubs/lpf2hub.d.ts.map +1 -1
- package/dist/hubs/lpf2hub.js +11 -0
- package/dist/hubs/lpf2hub.js.map +1 -1
- package/dist/portoutputcommand.d.ts +13 -0
- package/dist/portoutputcommand.d.ts.map +1 -0
- package/dist/portoutputcommand.js +30 -0
- package/dist/portoutputcommand.js.map +1 -0
- package/dist/portoutputsleep.d.ts +6 -0
- package/dist/portoutputsleep.d.ts.map +1 -0
- package/dist/portoutputsleep.js +10 -0
- package/dist/portoutputsleep.js.map +1 -0
- package/dist/utils.d.ts +1 -3
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +13 -19
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
- package/src/consts.ts +44 -0
- package/src/devices/absolutemotor.ts +24 -31
- package/src/devices/basicmotor.ts +16 -22
- package/src/devices/colordistancesensor.ts +23 -29
- package/src/devices/device.ts +198 -20
- package/src/devices/duplotrainbasespeaker.ts +5 -8
- package/src/devices/hubled.ts +22 -22
- package/src/devices/light.ts +11 -18
- package/src/devices/piezobuzzer.ts +3 -3
- package/src/devices/tachomotor.ts +47 -53
- package/src/devices/technic3x3colorlightmatrix.ts +20 -23
- package/src/devices/techniccolorsensor.ts +102 -10
- package/src/devices/technicdistancesensor.ts +1 -1
- package/src/devices/technicmediumhubtiltsensor.ts +9 -18
- package/src/devices/tiltsensor.ts +85 -5
- package/src/hubs/basehub.ts +18 -0
- package/src/hubs/lpf2hub.ts +12 -5
- package/src/portoutputcommand.ts +37 -0
- package/src/portoutputsleep.ts +11 -0
- package/src/utils.ts +14 -19
- package/tsconfig.tsbuildinfo +1 -1
- package/webpack.config.cjs +35 -0
- package/dist/node/color.d.ts +0 -6
- package/dist/node/color.js +0 -15
- package/dist/node/color.js.map +0 -1
- package/dist/node/commands.d.ts +0 -299
- package/dist/node/commands.js +0 -672
- package/dist/node/commands.js.map +0 -1
- package/dist/node/connection.d.ts +0 -187
- package/dist/node/connection.js +0 -478
- package/dist/node/connection.js.map +0 -1
- package/dist/node/consts.d.ts +0 -644
- package/dist/node/consts.js +0 -675
- package/dist/node/consts.js.map +0 -1
- package/dist/node/devices/absolutemotor.d.ts +0 -43
- package/dist/node/devices/absolutemotor.js +0 -118
- package/dist/node/devices/absolutemotor.js.map +0 -1
- package/dist/node/devices/basicmotor.d.ts +0 -40
- package/dist/node/devices/basicmotor.js +0 -61
- package/dist/node/devices/basicmotor.js.map +0 -1
- package/dist/node/devices/colordistancesensor.d.ts +0 -79
- package/dist/node/devices/colordistancesensor.js +0 -284
- package/dist/node/devices/colordistancesensor.js.map +0 -1
- package/dist/node/devices/currentsensor.d.ts +0 -16
- package/dist/node/devices/currentsensor.js +0 -55
- package/dist/node/devices/currentsensor.js.map +0 -1
- package/dist/node/devices/device.d.ts +0 -71
- package/dist/node/devices/device.js +0 -162
- package/dist/node/devices/device.js.map +0 -1
- package/dist/node/devices/duplotrainbasecolorsensor.d.ts +0 -19
- package/dist/node/devices/duplotrainbasecolorsensor.js +0 -77
- package/dist/node/devices/duplotrainbasecolorsensor.js.map +0 -1
- package/dist/node/devices/duplotrainbasemotor.d.ts +0 -9
- package/dist/node/devices/duplotrainbasemotor.js +0 -12
- package/dist/node/devices/duplotrainbasemotor.js.map +0 -1
- package/dist/node/devices/duplotrainbasespeaker.d.ts +0 -28
- package/dist/node/devices/duplotrainbasespeaker.js +0 -40
- package/dist/node/devices/duplotrainbasespeaker.js.map +0 -1
- package/dist/node/devices/duplotrainbasespeedometer.d.ts +0 -16
- package/dist/node/devices/duplotrainbasespeedometer.js +0 -34
- package/dist/node/devices/duplotrainbasespeedometer.js.map +0 -1
- package/dist/node/devices/hubled.d.ts +0 -29
- package/dist/node/devices/hubled.js +0 -60
- package/dist/node/devices/hubled.js.map +0 -1
- package/dist/node/devices/index.d.ts +0 -14
- package/dist/node/devices/index.js +0 -154
- package/dist/node/devices/index.js.map +0 -1
- package/dist/node/devices/led.d.ts +0 -140
- package/dist/node/devices/led.js +0 -295
- package/dist/node/devices/led.js.map +0 -1
- package/dist/node/devices/light.d.ts +0 -25
- package/dist/node/devices/light.js +0 -46
- package/dist/node/devices/light.js.map +0 -1
- package/dist/node/devices/marioaccelerometer.d.ts +0 -17
- package/dist/node/devices/marioaccelerometer.js +0 -50
- package/dist/node/devices/marioaccelerometer.js.map +0 -1
- package/dist/node/devices/mariobarcodesensor.d.ts +0 -17
- package/dist/node/devices/mariobarcodesensor.js +0 -58
- package/dist/node/devices/mariobarcodesensor.js.map +0 -1
- package/dist/node/devices/mariopantssensor.d.ts +0 -16
- package/dist/node/devices/mariopantssensor.js +0 -34
- package/dist/node/devices/mariopantssensor.js.map +0 -1
- package/dist/node/devices/mediumlinearmotor.d.ts +0 -9
- package/dist/node/devices/mediumlinearmotor.js +0 -12
- package/dist/node/devices/mediumlinearmotor.js.map +0 -1
- package/dist/node/devices/motionsensor.d.ts +0 -16
- package/dist/node/devices/motionsensor.js +0 -38
- package/dist/node/devices/motionsensor.js.map +0 -1
- package/dist/node/devices/motor.d.ts +0 -182
- package/dist/node/devices/motor.js +0 -367
- package/dist/node/devices/motor.js.map +0 -1
- package/dist/node/devices/movehubmediumlinearmotor.d.ts +0 -9
- package/dist/node/devices/movehubmediumlinearmotor.js +0 -12
- package/dist/node/devices/movehubmediumlinearmotor.js.map +0 -1
- package/dist/node/devices/movehubtiltsensor.d.ts +0 -16
- package/dist/node/devices/movehubtiltsensor.js +0 -36
- package/dist/node/devices/movehubtiltsensor.js.map +0 -1
- package/dist/node/devices/piezobuzzer.d.ts +0 -17
- package/dist/node/devices/piezobuzzer.js +0 -28
- package/dist/node/devices/piezobuzzer.js.map +0 -1
- package/dist/node/devices/remotecontrolbutton.d.ts +0 -19
- package/dist/node/devices/remotecontrolbutton.js +0 -40
- package/dist/node/devices/remotecontrolbutton.js.map +0 -1
- package/dist/node/devices/sensor.d.ts +0 -305
- package/dist/node/devices/sensor.js +0 -662
- package/dist/node/devices/sensor.js.map +0 -1
- package/dist/node/devices/simplemediumlinearmotor.d.ts +0 -9
- package/dist/node/devices/simplemediumlinearmotor.js +0 -12
- package/dist/node/devices/simplemediumlinearmotor.js.map +0 -1
- package/dist/node/devices/tachomotor.d.ts +0 -70
- package/dist/node/devices/tachomotor.js +0 -167
- package/dist/node/devices/tachomotor.js.map +0 -1
- package/dist/node/devices/technic3x3colorlightmatrix.d.ts +0 -22
- package/dist/node/devices/technic3x3colorlightmatrix.js +0 -54
- package/dist/node/devices/technic3x3colorlightmatrix.js.map +0 -1
- package/dist/node/devices/techniccolorsensor.d.ts +0 -27
- package/dist/node/devices/techniccolorsensor.js +0 -72
- package/dist/node/devices/techniccolorsensor.js.map +0 -1
- package/dist/node/devices/technicdistancesensor.d.ts +0 -27
- package/dist/node/devices/technicdistancesensor.js +0 -58
- package/dist/node/devices/technicdistancesensor.js.map +0 -1
- package/dist/node/devices/technicforcesensor.d.ts +0 -18
- package/dist/node/devices/technicforcesensor.js +0 -58
- package/dist/node/devices/technicforcesensor.js.map +0 -1
- package/dist/node/devices/techniclargeangularmotor.d.ts +0 -12
- package/dist/node/devices/techniclargeangularmotor.js +0 -12
- package/dist/node/devices/techniclargeangularmotor.js.map +0 -1
- package/dist/node/devices/techniclargelinearmotor.d.ts +0 -9
- package/dist/node/devices/techniclargelinearmotor.js +0 -12
- package/dist/node/devices/techniclargelinearmotor.js.map +0 -1
- package/dist/node/devices/technicmediumangularmotor.d.ts +0 -12
- package/dist/node/devices/technicmediumangularmotor.js +0 -12
- package/dist/node/devices/technicmediumangularmotor.js.map +0 -1
- package/dist/node/devices/technicmediumhubaccelerometersensor.d.ts +0 -16
- package/dist/node/devices/technicmediumhubaccelerometersensor.js +0 -38
- package/dist/node/devices/technicmediumhubaccelerometersensor.js.map +0 -1
- package/dist/node/devices/technicmediumhubgyrosensor.d.ts +0 -16
- package/dist/node/devices/technicmediumhubgyrosensor.js +0 -38
- package/dist/node/devices/technicmediumhubgyrosensor.js.map +0 -1
- package/dist/node/devices/technicmediumhubtiltsensor.d.ts +0 -40
- package/dist/node/devices/technicmediumhubtiltsensor.js +0 -106
- package/dist/node/devices/technicmediumhubtiltsensor.js.map +0 -1
- package/dist/node/devices/technicsmallangularmotor.d.ts +0 -12
- package/dist/node/devices/technicsmallangularmotor.js +0 -12
- package/dist/node/devices/technicsmallangularmotor.js.map +0 -1
- package/dist/node/devices/technicxlargelinearmotor.d.ts +0 -9
- package/dist/node/devices/technicxlargelinearmotor.js +0 -12
- package/dist/node/devices/technicxlargelinearmotor.js.map +0 -1
- package/dist/node/devices/tiltsensor.d.ts +0 -16
- package/dist/node/devices/tiltsensor.js +0 -36
- package/dist/node/devices/tiltsensor.js.map +0 -1
- package/dist/node/devices/trainmotor.d.ts +0 -9
- package/dist/node/devices/trainmotor.js +0 -12
- package/dist/node/devices/trainmotor.js.map +0 -1
- package/dist/node/devices/voltagesensor.d.ts +0 -16
- package/dist/node/devices/voltagesensor.js +0 -59
- package/dist/node/devices/voltagesensor.js.map +0 -1
- package/dist/node/hub.d.ts +0 -291
- package/dist/node/hub.js +0 -778
- package/dist/node/hub.js.map +0 -1
- package/dist/node/hubs/basehub.d.ts +0 -162
- package/dist/node/hubs/basehub.js +0 -392
- package/dist/node/hubs/basehub.js.map +0 -1
- package/dist/node/hubs/duplotrainbase.d.ts +0 -17
- package/dist/node/hubs/duplotrainbase.js +0 -35
- package/dist/node/hubs/duplotrainbase.js.map +0 -1
- package/dist/node/hubs/hub.d.ts +0 -19
- package/dist/node/hubs/hub.js +0 -44
- package/dist/node/hubs/hub.js.map +0 -1
- package/dist/node/hubs/lpf2hub.d.ts +0 -48
- package/dist/node/hubs/lpf2hub.js +0 -314
- package/dist/node/hubs/lpf2hub.js.map +0 -1
- package/dist/node/hubs/mario.d.ts +0 -17
- package/dist/node/hubs/mario.js +0 -31
- package/dist/node/hubs/mario.js.map +0 -1
- package/dist/node/hubs/movehub.d.ts +0 -18
- package/dist/node/hubs/movehub.js +0 -46
- package/dist/node/hubs/movehub.js.map +0 -1
- package/dist/node/hubs/remotecontrol.d.ts +0 -17
- package/dist/node/hubs/remotecontrol.js +0 -37
- package/dist/node/hubs/remotecontrol.js.map +0 -1
- package/dist/node/hubs/technicmediumhub.d.ts +0 -17
- package/dist/node/hubs/technicmediumhub.js +0 -42
- package/dist/node/hubs/technicmediumhub.js.map +0 -1
- package/dist/node/hubs/technicsmallhub.d.ts +0 -18
- package/dist/node/hubs/technicsmallhub.js +0 -41
- package/dist/node/hubs/technicsmallhub.js.map +0 -1
- package/dist/node/hubs/wedo2smarthub.d.ts +0 -40
- package/dist/node/hubs/wedo2smarthub.js +0 -188
- package/dist/node/hubs/wedo2smarthub.js.map +0 -1
- package/dist/node/index-browser.d.ts +0 -1
- package/dist/node/index-browser.js +0 -96
- package/dist/node/index-browser.js.map +0 -1
- package/dist/node/index-node.d.ts +0 -49
- package/dist/node/index-node.js +0 -50
- package/dist/node/index-node.js.map +0 -1
- package/dist/node/index.d.ts +0 -31
- package/dist/node/index.js +0 -93
- package/dist/node/index.js.map +0 -1
- package/dist/node/index.mjs +0 -0
- package/dist/node/interfaces.d.ts +0 -23
- package/dist/node/interfaces.js +0 -2
- package/dist/node/interfaces.js.map +0 -1
- package/dist/node/nobleabstraction.d.ts +0 -26
- package/dist/node/nobleabstraction.js +0 -123
- package/dist/node/nobleabstraction.js.map +0 -1
- package/dist/node/poweredup-browser.d.ts +0 -50
- package/dist/node/poweredup-browser.js +0 -216
- package/dist/node/poweredup-browser.js.map +0 -1
- package/dist/node/poweredup-node.d.ts +0 -54
- package/dist/node/poweredup-node.js +0 -173
- package/dist/node/poweredup-node.js.map +0 -1
- package/dist/node/poweredup.d.ts +0 -83
- package/dist/node/poweredup.js +0 -542
- package/dist/node/poweredup.js.map +0 -1
- package/dist/node/protocol-wedo.d.ts +0 -158
- package/dist/node/protocol-wedo.js +0 -342
- package/dist/node/protocol-wedo.js.map +0 -1
- package/dist/node/protocol.d.ts +0 -340
- package/dist/node/protocol.js +0 -730
- package/dist/node/protocol.js.map +0 -1
- package/dist/node/types.d.ts +0 -408
- package/dist/node/types.js +0 -291
- package/dist/node/types.js.map +0 -1
- package/dist/node/utils.d.ts +0 -12
- package/dist/node/utils.js +0 -90
- package/dist/node/utils.js.map +0 -1
- package/dist/node/webbleabstraction.d.ts +0 -26
- package/dist/node/webbleabstraction.js +0 -104
- package/dist/node/webbleabstraction.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { Device } from "./device";
|
|
2
|
-
import * as Consts from "../consts";
|
|
3
|
-
/**
|
|
4
|
-
* @class HubLED
|
|
5
|
-
* @extends Device
|
|
6
|
-
*/
|
|
7
|
-
export class HubLED extends Device {
|
|
8
|
-
constructor(hub, portId) {
|
|
9
|
-
super(hub, portId, {}, Consts.DeviceType.HUB_LED);
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Set the color of the LED on the Hub via a color value.
|
|
13
|
-
* @method HubLED#setColor
|
|
14
|
-
* @param {Color} color
|
|
15
|
-
* @returns {Promise} Resolved upon successful issuance of the command.
|
|
16
|
-
*/
|
|
17
|
-
setColor(color) {
|
|
18
|
-
return new Promise((resolve) => {
|
|
19
|
-
if (typeof color === "boolean") {
|
|
20
|
-
color = 0;
|
|
21
|
-
}
|
|
22
|
-
if (this.isWeDo2SmartHub) {
|
|
23
|
-
this.send(Buffer.from([0x06, 0x17, 0x01, 0x01]), Consts.BLECharacteristic.WEDO2_PORT_TYPE_WRITE);
|
|
24
|
-
this.send(Buffer.from([0x06, 0x04, 0x01, color]), Consts.BLECharacteristic.WEDO2_MOTOR_VALUE_WRITE);
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
this.subscribe(Mode.COLOR);
|
|
28
|
-
this.writeDirect(0x00, Buffer.from([color]));
|
|
29
|
-
}
|
|
30
|
-
return resolve();
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Set the color of the LED on the Hub via RGB values.
|
|
35
|
-
* @method HubLED#setRGB
|
|
36
|
-
* @param {number} red
|
|
37
|
-
* @param {number} green
|
|
38
|
-
* @param {number} blue
|
|
39
|
-
* @returns {Promise} Resolved upon successful issuance of the command.
|
|
40
|
-
*/
|
|
41
|
-
setRGB(red, green, blue) {
|
|
42
|
-
return new Promise((resolve) => {
|
|
43
|
-
if (this.isWeDo2SmartHub) {
|
|
44
|
-
this.send(Buffer.from([0x06, 0x17, 0x01, 0x02]), Consts.BLECharacteristic.WEDO2_PORT_TYPE_WRITE);
|
|
45
|
-
this.send(Buffer.from([0x06, 0x04, 0x03, red, green, blue]), Consts.BLECharacteristic.WEDO2_MOTOR_VALUE_WRITE);
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
this.subscribe(Mode.RGB);
|
|
49
|
-
this.writeDirect(0x01, Buffer.from([red, green, blue]));
|
|
50
|
-
}
|
|
51
|
-
return resolve();
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
export var Mode;
|
|
56
|
-
(function (Mode) {
|
|
57
|
-
Mode[Mode["COLOR"] = 0] = "COLOR";
|
|
58
|
-
Mode[Mode["RGB"] = 1] = "RGB";
|
|
59
|
-
})(Mode || (Mode = {}));
|
|
60
|
-
//# sourceMappingURL=hubled.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hubled.js","sourceRoot":"","sources":["../../../src/devices/hubled.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAIlC,OAAO,KAAK,MAAM,MAAM,WAAW,CAAC;AAEpC;;;GAGG;AACH,MAAM,OAAO,MAAO,SAAQ,MAAM;IAG9B,YAAa,GAAqB,EAAE,MAAc;QAC9C,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACtD,CAAC;IAGD;;;;;OAKG;IACI,QAAQ,CAAE,KAAuB;QACpC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YACjC,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC7B,KAAK,GAAG,CAAC,CAAC;YACd,CAAC;YACD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACvB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;gBACjG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,CAAC;YACxG,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3B,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjD,CAAC;YACD,OAAO,OAAO,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACP,CAAC;IAGD;;;;;;;OAOG;IACI,MAAM,CAAE,GAAW,EAAE,KAAa,EAAE,IAAY;QACnD,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YACjC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACvB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;gBACjG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,CAAC;YACnH,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACzB,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;YAC5D,CAAC;YACD,OAAO,OAAO,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACP,CAAC;CAGJ;AAED,MAAM,CAAN,IAAY,IAGX;AAHD,WAAY,IAAI;IACZ,iCAAY,CAAA;IACZ,6BAAU,CAAA;AACd,CAAC,EAHW,IAAI,KAAJ,IAAI,QAGf"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Devices module - exports all device types
|
|
3
|
-
*/
|
|
4
|
-
export { Device, getDeviceTypeName } from "./device";
|
|
5
|
-
export { MotorMode, BasicMotor, TrainMotor, TachoMotor, AbsoluteMotor, MediumLinearMotor, MoveHubMediumLinearMotor, TechnicLargeLinearMotor, TechnicXLargeLinearMotor, TechnicMediumAngularMotor, TechnicLargeAngularMotor, TechnicSmallAngularMotor, WeDo2MediumMotor, DuploTrainMotor, } from "./motor";
|
|
6
|
-
export { ColorDistanceMode, TiltMode, Orientation, MotionMode, ColorDistanceSensor, TiltSensor, MotionSensor, TechnicColorSensor, TechnicDistanceSensor, TechnicForceSensor, TechnicMediumHubGyroSensor, TechnicMediumHubAccelerometerSensor, TechnicMediumHubTiltSensor, MoveHubTiltSensor, VoltageSensor, CurrentSensor, RemoteButtonState, RemoteControlButton, DuploTrainBaseColorSensor, DuploTrainBaseSpeedometer, } from "./sensor";
|
|
7
|
-
export { HubLED, LEDLights, Technic3x3ColorLightMatrix, PiezoBuzzer, DuploTrainSound, DuploTrainBaseSpeaker, } from "./led";
|
|
8
|
-
import { PortInfo } from "../types";
|
|
9
|
-
import { BaseHub } from "../hub";
|
|
10
|
-
import { Device } from "./device";
|
|
11
|
-
/**
|
|
12
|
-
* Create a device instance based on device type
|
|
13
|
-
*/
|
|
14
|
-
export declare function createDevice(hub: BaseHub, portInfo: PortInfo): Device;
|
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Devices module - exports all device types
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.DuploTrainBaseSpeaker = exports.DuploTrainSound = exports.PiezoBuzzer = exports.Technic3x3ColorLightMatrix = exports.LEDLights = exports.HubLED = exports.DuploTrainBaseSpeedometer = exports.DuploTrainBaseColorSensor = exports.RemoteControlButton = exports.RemoteButtonState = exports.CurrentSensor = exports.VoltageSensor = exports.MoveHubTiltSensor = exports.TechnicMediumHubTiltSensor = exports.TechnicMediumHubAccelerometerSensor = exports.TechnicMediumHubGyroSensor = exports.TechnicForceSensor = exports.TechnicDistanceSensor = exports.TechnicColorSensor = exports.MotionSensor = exports.TiltSensor = exports.ColorDistanceSensor = exports.MotionMode = exports.Orientation = exports.TiltMode = exports.ColorDistanceMode = 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 = exports.getDeviceTypeName = exports.Device = void 0;
|
|
7
|
-
exports.createDevice = createDevice;
|
|
8
|
-
// Base device class
|
|
9
|
-
var device_1 = require("./device");
|
|
10
|
-
Object.defineProperty(exports, "Device", { enumerable: true, get: function () { return device_1.Device; } });
|
|
11
|
-
Object.defineProperty(exports, "getDeviceTypeName", { enumerable: true, get: function () { return device_1.getDeviceTypeName; } });
|
|
12
|
-
// Motor devices
|
|
13
|
-
var motor_1 = require("./motor");
|
|
14
|
-
Object.defineProperty(exports, "MotorMode", { enumerable: true, get: function () { return motor_1.MotorMode; } });
|
|
15
|
-
Object.defineProperty(exports, "BasicMotor", { enumerable: true, get: function () { return motor_1.BasicMotor; } });
|
|
16
|
-
Object.defineProperty(exports, "TrainMotor", { enumerable: true, get: function () { return motor_1.TrainMotor; } });
|
|
17
|
-
Object.defineProperty(exports, "TachoMotor", { enumerable: true, get: function () { return motor_1.TachoMotor; } });
|
|
18
|
-
Object.defineProperty(exports, "AbsoluteMotor", { enumerable: true, get: function () { return motor_1.AbsoluteMotor; } });
|
|
19
|
-
Object.defineProperty(exports, "MediumLinearMotor", { enumerable: true, get: function () { return motor_1.MediumLinearMotor; } });
|
|
20
|
-
Object.defineProperty(exports, "MoveHubMediumLinearMotor", { enumerable: true, get: function () { return motor_1.MoveHubMediumLinearMotor; } });
|
|
21
|
-
Object.defineProperty(exports, "TechnicLargeLinearMotor", { enumerable: true, get: function () { return motor_1.TechnicLargeLinearMotor; } });
|
|
22
|
-
Object.defineProperty(exports, "TechnicXLargeLinearMotor", { enumerable: true, get: function () { return motor_1.TechnicXLargeLinearMotor; } });
|
|
23
|
-
Object.defineProperty(exports, "TechnicMediumAngularMotor", { enumerable: true, get: function () { return motor_1.TechnicMediumAngularMotor; } });
|
|
24
|
-
Object.defineProperty(exports, "TechnicLargeAngularMotor", { enumerable: true, get: function () { return motor_1.TechnicLargeAngularMotor; } });
|
|
25
|
-
Object.defineProperty(exports, "TechnicSmallAngularMotor", { enumerable: true, get: function () { return motor_1.TechnicSmallAngularMotor; } });
|
|
26
|
-
Object.defineProperty(exports, "WeDo2MediumMotor", { enumerable: true, get: function () { return motor_1.WeDo2MediumMotor; } });
|
|
27
|
-
Object.defineProperty(exports, "DuploTrainMotor", { enumerable: true, get: function () { return motor_1.DuploTrainMotor; } });
|
|
28
|
-
// Sensor devices
|
|
29
|
-
var sensor_1 = require("./sensor");
|
|
30
|
-
Object.defineProperty(exports, "ColorDistanceMode", { enumerable: true, get: function () { return sensor_1.ColorDistanceMode; } });
|
|
31
|
-
Object.defineProperty(exports, "TiltMode", { enumerable: true, get: function () { return sensor_1.TiltMode; } });
|
|
32
|
-
Object.defineProperty(exports, "Orientation", { enumerable: true, get: function () { return sensor_1.Orientation; } });
|
|
33
|
-
Object.defineProperty(exports, "MotionMode", { enumerable: true, get: function () { return sensor_1.MotionMode; } });
|
|
34
|
-
Object.defineProperty(exports, "ColorDistanceSensor", { enumerable: true, get: function () { return sensor_1.ColorDistanceSensor; } });
|
|
35
|
-
Object.defineProperty(exports, "TiltSensor", { enumerable: true, get: function () { return sensor_1.TiltSensor; } });
|
|
36
|
-
Object.defineProperty(exports, "MotionSensor", { enumerable: true, get: function () { return sensor_1.MotionSensor; } });
|
|
37
|
-
Object.defineProperty(exports, "TechnicColorSensor", { enumerable: true, get: function () { return sensor_1.TechnicColorSensor; } });
|
|
38
|
-
Object.defineProperty(exports, "TechnicDistanceSensor", { enumerable: true, get: function () { return sensor_1.TechnicDistanceSensor; } });
|
|
39
|
-
Object.defineProperty(exports, "TechnicForceSensor", { enumerable: true, get: function () { return sensor_1.TechnicForceSensor; } });
|
|
40
|
-
Object.defineProperty(exports, "TechnicMediumHubGyroSensor", { enumerable: true, get: function () { return sensor_1.TechnicMediumHubGyroSensor; } });
|
|
41
|
-
Object.defineProperty(exports, "TechnicMediumHubAccelerometerSensor", { enumerable: true, get: function () { return sensor_1.TechnicMediumHubAccelerometerSensor; } });
|
|
42
|
-
Object.defineProperty(exports, "TechnicMediumHubTiltSensor", { enumerable: true, get: function () { return sensor_1.TechnicMediumHubTiltSensor; } });
|
|
43
|
-
Object.defineProperty(exports, "MoveHubTiltSensor", { enumerable: true, get: function () { return sensor_1.MoveHubTiltSensor; } });
|
|
44
|
-
Object.defineProperty(exports, "VoltageSensor", { enumerable: true, get: function () { return sensor_1.VoltageSensor; } });
|
|
45
|
-
Object.defineProperty(exports, "CurrentSensor", { enumerable: true, get: function () { return sensor_1.CurrentSensor; } });
|
|
46
|
-
Object.defineProperty(exports, "RemoteButtonState", { enumerable: true, get: function () { return sensor_1.RemoteButtonState; } });
|
|
47
|
-
Object.defineProperty(exports, "RemoteControlButton", { enumerable: true, get: function () { return sensor_1.RemoteControlButton; } });
|
|
48
|
-
Object.defineProperty(exports, "DuploTrainBaseColorSensor", { enumerable: true, get: function () { return sensor_1.DuploTrainBaseColorSensor; } });
|
|
49
|
-
Object.defineProperty(exports, "DuploTrainBaseSpeedometer", { enumerable: true, get: function () { return sensor_1.DuploTrainBaseSpeedometer; } });
|
|
50
|
-
// LED and light devices
|
|
51
|
-
var led_1 = require("./led");
|
|
52
|
-
Object.defineProperty(exports, "HubLED", { enumerable: true, get: function () { return led_1.HubLED; } });
|
|
53
|
-
Object.defineProperty(exports, "LEDLights", { enumerable: true, get: function () { return led_1.LEDLights; } });
|
|
54
|
-
Object.defineProperty(exports, "Technic3x3ColorLightMatrix", { enumerable: true, get: function () { return led_1.Technic3x3ColorLightMatrix; } });
|
|
55
|
-
Object.defineProperty(exports, "PiezoBuzzer", { enumerable: true, get: function () { return led_1.PiezoBuzzer; } });
|
|
56
|
-
Object.defineProperty(exports, "DuploTrainSound", { enumerable: true, get: function () { return led_1.DuploTrainSound; } });
|
|
57
|
-
Object.defineProperty(exports, "DuploTrainBaseSpeaker", { enumerable: true, get: function () { return led_1.DuploTrainBaseSpeaker; } });
|
|
58
|
-
// ============================================================================
|
|
59
|
-
// Device Factory
|
|
60
|
-
// ============================================================================
|
|
61
|
-
const types_1 = require("../types");
|
|
62
|
-
const motor_2 = require("./motor");
|
|
63
|
-
const sensor_2 = require("./sensor");
|
|
64
|
-
const led_2 = require("./led");
|
|
65
|
-
/**
|
|
66
|
-
* Create a device instance based on device type
|
|
67
|
-
*/
|
|
68
|
-
function createDevice(hub, portInfo) {
|
|
69
|
-
switch (portInfo.deviceType) {
|
|
70
|
-
// Basic motors
|
|
71
|
-
case types_1.DeviceType.SIMPLE_MEDIUM_LINEAR_MOTOR:
|
|
72
|
-
return new motor_2.BasicMotor(hub, portInfo);
|
|
73
|
-
case types_1.DeviceType.TRAIN_MOTOR:
|
|
74
|
-
return new motor_2.TrainMotor(hub, portInfo);
|
|
75
|
-
// Tacho motors
|
|
76
|
-
case types_1.DeviceType.MEDIUM_LINEAR_MOTOR:
|
|
77
|
-
return new motor_2.MediumLinearMotor(hub, portInfo);
|
|
78
|
-
case types_1.DeviceType.MOVE_HUB_MEDIUM_LINEAR_MOTOR:
|
|
79
|
-
return new motor_2.MoveHubMediumLinearMotor(hub, portInfo);
|
|
80
|
-
// Absolute motors (Technic)
|
|
81
|
-
case types_1.DeviceType.TECHNIC_LARGE_LINEAR_MOTOR:
|
|
82
|
-
return new motor_2.TechnicLargeLinearMotor(hub, portInfo);
|
|
83
|
-
case types_1.DeviceType.TECHNIC_XLARGE_LINEAR_MOTOR:
|
|
84
|
-
return new motor_2.TechnicXLargeLinearMotor(hub, portInfo);
|
|
85
|
-
case types_1.DeviceType.TECHNIC_MEDIUM_ANGULAR_MOTOR:
|
|
86
|
-
return new motor_2.TechnicMediumAngularMotor(hub, portInfo);
|
|
87
|
-
case types_1.DeviceType.TECHNIC_LARGE_ANGULAR_MOTOR:
|
|
88
|
-
return new motor_2.TechnicLargeAngularMotor(hub, portInfo);
|
|
89
|
-
case types_1.DeviceType.TECHNIC_SMALL_ANGULAR_MOTOR:
|
|
90
|
-
return new motor_2.TechnicSmallAngularMotor(hub, portInfo);
|
|
91
|
-
// WeDo 2.0 motor
|
|
92
|
-
case types_1.DeviceType.WEDO2_MEDIUM_MOTOR:
|
|
93
|
-
return new motor_2.WeDo2MediumMotor(hub, portInfo);
|
|
94
|
-
// Duplo motor
|
|
95
|
-
case types_1.DeviceType.DUPLO_TRAIN_BASE_MOTOR:
|
|
96
|
-
return new motor_2.DuploTrainMotor(hub, portInfo);
|
|
97
|
-
// Color/distance sensors
|
|
98
|
-
case types_1.DeviceType.COLOR_DISTANCE_SENSOR:
|
|
99
|
-
return new sensor_2.ColorDistanceSensor(hub, portInfo);
|
|
100
|
-
case types_1.DeviceType.TECHNIC_COLOR_SENSOR:
|
|
101
|
-
return new sensor_2.TechnicColorSensor(hub, portInfo);
|
|
102
|
-
case types_1.DeviceType.TECHNIC_DISTANCE_SENSOR:
|
|
103
|
-
return new sensor_2.TechnicDistanceSensor(hub, portInfo);
|
|
104
|
-
// Tilt sensors
|
|
105
|
-
case types_1.DeviceType.TILT_SENSOR:
|
|
106
|
-
case types_1.DeviceType.WEDO2_TILT_SENSOR:
|
|
107
|
-
return new sensor_2.TiltSensor(hub, portInfo);
|
|
108
|
-
case types_1.DeviceType.MOVE_HUB_TILT_SENSOR:
|
|
109
|
-
return new sensor_2.MoveHubTiltSensor(hub, portInfo);
|
|
110
|
-
case types_1.DeviceType.TECHNIC_MEDIUM_HUB_TILT_SENSOR:
|
|
111
|
-
return new sensor_2.TechnicMediumHubTiltSensor(hub, portInfo);
|
|
112
|
-
// Motion sensors
|
|
113
|
-
case types_1.DeviceType.MOTION_SENSOR:
|
|
114
|
-
case types_1.DeviceType.WEDO2_MOTION_SENSOR:
|
|
115
|
-
return new sensor_2.MotionSensor(hub, portInfo);
|
|
116
|
-
// Force sensor
|
|
117
|
-
case types_1.DeviceType.TECHNIC_FORCE_SENSOR:
|
|
118
|
-
return new sensor_2.TechnicForceSensor(hub, portInfo);
|
|
119
|
-
// Technic hub internal sensors
|
|
120
|
-
case types_1.DeviceType.TECHNIC_MEDIUM_HUB_GYRO_SENSOR:
|
|
121
|
-
return new sensor_2.TechnicMediumHubGyroSensor(hub, portInfo);
|
|
122
|
-
case types_1.DeviceType.TECHNIC_MEDIUM_HUB_ACCELEROMETER_SENSOR:
|
|
123
|
-
return new sensor_2.TechnicMediumHubAccelerometerSensor(hub, portInfo);
|
|
124
|
-
// Power sensors
|
|
125
|
-
case types_1.DeviceType.VOLTAGE_SENSOR:
|
|
126
|
-
return new sensor_2.VoltageSensor(hub, portInfo);
|
|
127
|
-
case types_1.DeviceType.CURRENT_SENSOR:
|
|
128
|
-
return new sensor_2.CurrentSensor(hub, portInfo);
|
|
129
|
-
// Remote control button
|
|
130
|
-
case types_1.DeviceType.REMOTE_CONTROL_BUTTON:
|
|
131
|
-
return new sensor_2.RemoteControlButton(hub, portInfo);
|
|
132
|
-
// LEDs
|
|
133
|
-
case types_1.DeviceType.HUB_LED:
|
|
134
|
-
return new led_2.HubLED(hub, portInfo);
|
|
135
|
-
case types_1.DeviceType.LED_LIGHTS:
|
|
136
|
-
return new led_2.LEDLights(hub, portInfo);
|
|
137
|
-
case types_1.DeviceType.TECHNIC_3X3_COLOR_LIGHT_MATRIX:
|
|
138
|
-
return new led_2.Technic3x3ColorLightMatrix(hub, portInfo);
|
|
139
|
-
// Audio
|
|
140
|
-
case types_1.DeviceType.PIEZO_BUZZER:
|
|
141
|
-
return new led_2.PiezoBuzzer(hub, portInfo);
|
|
142
|
-
case types_1.DeviceType.DUPLO_TRAIN_BASE_SPEAKER:
|
|
143
|
-
return new led_2.DuploTrainBaseSpeaker(hub, portInfo);
|
|
144
|
-
// Duplo sensors
|
|
145
|
-
case types_1.DeviceType.DUPLO_TRAIN_BASE_COLOR_SENSOR:
|
|
146
|
-
return new sensor_2.DuploTrainBaseColorSensor(hub, portInfo);
|
|
147
|
-
case types_1.DeviceType.DUPLO_TRAIN_BASE_SPEEDOMETER:
|
|
148
|
-
return new sensor_2.DuploTrainBaseSpeedometer(hub, portInfo);
|
|
149
|
-
// Unknown device - use basic device
|
|
150
|
-
default:
|
|
151
|
-
return new motor_2.BasicMotor(hub, portInfo);
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/devices/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAgHH,oCAoGC;AAlND,oBAAoB;AACpB,mCAAqD;AAA5C,gGAAA,MAAM,OAAA;AAAE,2GAAA,iBAAiB,OAAA;AAElC,gBAAgB;AAChB,iCAeiB;AAdb,kGAAA,SAAS,OAAA;AACT,mGAAA,UAAU,OAAA;AACV,mGAAA,UAAU,OAAA;AACV,mGAAA,UAAU,OAAA;AACV,sGAAA,aAAa,OAAA;AACb,0GAAA,iBAAiB,OAAA;AACjB,iHAAA,wBAAwB,OAAA;AACxB,gHAAA,uBAAuB,OAAA;AACvB,iHAAA,wBAAwB,OAAA;AACxB,kHAAA,yBAAyB,OAAA;AACzB,iHAAA,wBAAwB,OAAA;AACxB,iHAAA,wBAAwB,OAAA;AACxB,yGAAA,gBAAgB,OAAA;AAChB,wGAAA,eAAe,OAAA;AAGnB,iBAAiB;AACjB,mCAqBkB;AApBd,2GAAA,iBAAiB,OAAA;AACjB,kGAAA,QAAQ,OAAA;AACR,qGAAA,WAAW,OAAA;AACX,oGAAA,UAAU,OAAA;AACV,6GAAA,mBAAmB,OAAA;AACnB,oGAAA,UAAU,OAAA;AACV,sGAAA,YAAY,OAAA;AACZ,4GAAA,kBAAkB,OAAA;AAClB,+GAAA,qBAAqB,OAAA;AACrB,4GAAA,kBAAkB,OAAA;AAClB,oHAAA,0BAA0B,OAAA;AAC1B,6HAAA,mCAAmC,OAAA;AACnC,oHAAA,0BAA0B,OAAA;AAC1B,2GAAA,iBAAiB,OAAA;AACjB,uGAAA,aAAa,OAAA;AACb,uGAAA,aAAa,OAAA;AACb,2GAAA,iBAAiB,OAAA;AACjB,6GAAA,mBAAmB,OAAA;AACnB,mHAAA,yBAAyB,OAAA;AACzB,mHAAA,yBAAyB,OAAA;AAG7B,wBAAwB;AACxB,6BAOe;AANX,6FAAA,MAAM,OAAA;AACN,gGAAA,SAAS,OAAA;AACT,iHAAA,0BAA0B,OAAA;AAC1B,kGAAA,WAAW,OAAA;AACX,sGAAA,eAAe,OAAA;AACf,4GAAA,qBAAqB,OAAA;AAIzB,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAE/E,oCAAgD;AAIhD,mCAciB;AAEjB,qCAgBkB;AAElB,+BAMe;AAGf;;GAEG;AACH,SAAgB,YAAY,CAAC,GAAY,EAAE,QAAkB;IACzD,QAAQ,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC1B,eAAe;QACf,KAAK,kBAAU,CAAC,0BAA0B;YACtC,OAAO,IAAI,kBAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACzC,KAAK,kBAAU,CAAC,WAAW;YACvB,OAAO,IAAI,kBAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAEzC,eAAe;QACf,KAAK,kBAAU,CAAC,mBAAmB;YAC/B,OAAO,IAAI,yBAAiB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAChD,KAAK,kBAAU,CAAC,4BAA4B;YACxC,OAAO,IAAI,gCAAwB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAEvD,4BAA4B;QAC5B,KAAK,kBAAU,CAAC,0BAA0B;YACtC,OAAO,IAAI,+BAAuB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACtD,KAAK,kBAAU,CAAC,2BAA2B;YACvC,OAAO,IAAI,gCAAwB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACvD,KAAK,kBAAU,CAAC,4BAA4B;YACxC,OAAO,IAAI,iCAAyB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACxD,KAAK,kBAAU,CAAC,2BAA2B;YACvC,OAAO,IAAI,gCAAwB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACvD,KAAK,kBAAU,CAAC,2BAA2B;YACvC,OAAO,IAAI,gCAAwB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAEvD,iBAAiB;QACjB,KAAK,kBAAU,CAAC,kBAAkB;YAC9B,OAAO,IAAI,wBAAgB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAE/C,cAAc;QACd,KAAK,kBAAU,CAAC,sBAAsB;YAClC,OAAO,IAAI,uBAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAE9C,yBAAyB;QACzB,KAAK,kBAAU,CAAC,qBAAqB;YACjC,OAAO,IAAI,4BAAmB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAClD,KAAK,kBAAU,CAAC,oBAAoB;YAChC,OAAO,IAAI,2BAAkB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACjD,KAAK,kBAAU,CAAC,uBAAuB;YACnC,OAAO,IAAI,8BAAqB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAEpD,eAAe;QACf,KAAK,kBAAU,CAAC,WAAW,CAAC;QAC5B,KAAK,kBAAU,CAAC,iBAAiB;YAC7B,OAAO,IAAI,mBAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACzC,KAAK,kBAAU,CAAC,oBAAoB;YAChC,OAAO,IAAI,0BAAiB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAChD,KAAK,kBAAU,CAAC,8BAA8B;YAC1C,OAAO,IAAI,mCAA0B,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAEzD,iBAAiB;QACjB,KAAK,kBAAU,CAAC,aAAa,CAAC;QAC9B,KAAK,kBAAU,CAAC,mBAAmB;YAC/B,OAAO,IAAI,qBAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAE3C,eAAe;QACf,KAAK,kBAAU,CAAC,oBAAoB;YAChC,OAAO,IAAI,2BAAkB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAEjD,+BAA+B;QAC/B,KAAK,kBAAU,CAAC,8BAA8B;YAC1C,OAAO,IAAI,mCAA0B,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACzD,KAAK,kBAAU,CAAC,uCAAuC;YACnD,OAAO,IAAI,4CAAmC,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAElE,gBAAgB;QAChB,KAAK,kBAAU,CAAC,cAAc;YAC1B,OAAO,IAAI,sBAAa,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC5C,KAAK,kBAAU,CAAC,cAAc;YAC1B,OAAO,IAAI,sBAAa,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAE5C,wBAAwB;QACxB,KAAK,kBAAU,CAAC,qBAAqB;YACjC,OAAO,IAAI,4BAAmB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAElD,OAAO;QACP,KAAK,kBAAU,CAAC,OAAO;YACnB,OAAO,IAAI,YAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACrC,KAAK,kBAAU,CAAC,UAAU;YACtB,OAAO,IAAI,eAAS,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACxC,KAAK,kBAAU,CAAC,8BAA8B;YAC1C,OAAO,IAAI,gCAA0B,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAEzD,QAAQ;QACR,KAAK,kBAAU,CAAC,YAAY;YACxB,OAAO,IAAI,iBAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC1C,KAAK,kBAAU,CAAC,wBAAwB;YACpC,OAAO,IAAI,2BAAqB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAEpD,gBAAgB;QAChB,KAAK,kBAAU,CAAC,6BAA6B;YACzC,OAAO,IAAI,kCAAyB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACxD,KAAK,kBAAU,CAAC,4BAA4B;YACxC,OAAO,IAAI,kCAAyB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAExD,oCAAoC;QACpC;YACI,OAAO,IAAI,kBAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC7C,CAAC;AACL,CAAC"}
|
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* LED and Light devices for LEGO Powered UP
|
|
3
|
-
*/
|
|
4
|
-
import { PortInfo, Color } from "../types";
|
|
5
|
-
import { BaseHub } from "../hub";
|
|
6
|
-
import { Device } from "./device";
|
|
7
|
-
/**
|
|
8
|
-
* Hub LED - The built-in RGB LED on hubs
|
|
9
|
-
*/
|
|
10
|
-
export declare class HubLED extends Device {
|
|
11
|
-
protected _color: Color;
|
|
12
|
-
protected _rgb: {
|
|
13
|
-
r: number;
|
|
14
|
-
g: number;
|
|
15
|
-
b: number;
|
|
16
|
-
};
|
|
17
|
-
constructor(hub: BaseHub, portInfo: PortInfo);
|
|
18
|
-
/**
|
|
19
|
-
* Get current color
|
|
20
|
-
*/
|
|
21
|
-
get color(): Color;
|
|
22
|
-
/**
|
|
23
|
-
* Get current RGB values
|
|
24
|
-
*/
|
|
25
|
-
get rgb(): {
|
|
26
|
-
r: number;
|
|
27
|
-
g: number;
|
|
28
|
-
b: number;
|
|
29
|
-
};
|
|
30
|
-
/**
|
|
31
|
-
* Subscribe to LED updates (not applicable)
|
|
32
|
-
*/
|
|
33
|
-
subscribe(_mode?: number): Promise<void>;
|
|
34
|
-
/**
|
|
35
|
-
* Set LED to a predefined color
|
|
36
|
-
*/
|
|
37
|
-
setColor(color: Color): Promise<void>;
|
|
38
|
-
/**
|
|
39
|
-
* Set LED to RGB color
|
|
40
|
-
*/
|
|
41
|
-
setRGB(red: number, green: number, blue: number): Promise<void>;
|
|
42
|
-
/**
|
|
43
|
-
* Turn off LED
|
|
44
|
-
*/
|
|
45
|
-
turnOff(): Promise<void>;
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* External LED Lights (e.g., Boost LED lights)
|
|
49
|
-
*/
|
|
50
|
-
export declare class LEDLights extends Device {
|
|
51
|
-
protected _brightness: number;
|
|
52
|
-
constructor(hub: BaseHub, portInfo: PortInfo);
|
|
53
|
-
/**
|
|
54
|
-
* Get current brightness (0-100)
|
|
55
|
-
*/
|
|
56
|
-
get brightness(): number;
|
|
57
|
-
/**
|
|
58
|
-
* Subscribe to LED updates (not applicable)
|
|
59
|
-
*/
|
|
60
|
-
subscribe(_mode?: number): Promise<void>;
|
|
61
|
-
/**
|
|
62
|
-
* Set brightness (0-100)
|
|
63
|
-
*/
|
|
64
|
-
setBrightness(brightness: number): Promise<void>;
|
|
65
|
-
/**
|
|
66
|
-
* Turn off LEDs
|
|
67
|
-
*/
|
|
68
|
-
turnOff(): Promise<void>;
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Technic 3x3 Color Light Matrix
|
|
72
|
-
*/
|
|
73
|
-
export declare class Technic3x3ColorLightMatrix extends Device {
|
|
74
|
-
protected _pixels: Color[][];
|
|
75
|
-
constructor(hub: BaseHub, portInfo: PortInfo);
|
|
76
|
-
/**
|
|
77
|
-
* Get current pixel colors
|
|
78
|
-
*/
|
|
79
|
-
get pixels(): Color[][];
|
|
80
|
-
/**
|
|
81
|
-
* Subscribe to matrix updates (not applicable)
|
|
82
|
-
*/
|
|
83
|
-
subscribe(_mode?: number): Promise<void>;
|
|
84
|
-
/**
|
|
85
|
-
* Set a single pixel color
|
|
86
|
-
*/
|
|
87
|
-
setPixel(x: number, y: number, color: Color): Promise<void>;
|
|
88
|
-
/**
|
|
89
|
-
* Set all pixels to a single color
|
|
90
|
-
*/
|
|
91
|
-
setAll(color: Color): Promise<void>;
|
|
92
|
-
/**
|
|
93
|
-
* Set all pixels from a 3x3 array
|
|
94
|
-
*/
|
|
95
|
-
setMatrix(pixels: Color[][]): Promise<void>;
|
|
96
|
-
/**
|
|
97
|
-
* Clear the matrix (turn all pixels off)
|
|
98
|
-
*/
|
|
99
|
-
clear(): Promise<void>;
|
|
100
|
-
private _updateMatrix;
|
|
101
|
-
}
|
|
102
|
-
/**
|
|
103
|
-
* Piezo Buzzer (WeDo 2.0)
|
|
104
|
-
*/
|
|
105
|
-
export declare class PiezoBuzzer extends Device {
|
|
106
|
-
constructor(hub: BaseHub, portInfo: PortInfo);
|
|
107
|
-
/**
|
|
108
|
-
* Subscribe to buzzer updates (not applicable)
|
|
109
|
-
*/
|
|
110
|
-
subscribe(_mode?: number): Promise<void>;
|
|
111
|
-
/**
|
|
112
|
-
* Play a tone at specified frequency for specified duration
|
|
113
|
-
*/
|
|
114
|
-
playTone(frequency: number, duration: number): Promise<void>;
|
|
115
|
-
/**
|
|
116
|
-
* Stop playing tone
|
|
117
|
-
*/
|
|
118
|
-
stop(): Promise<void>;
|
|
119
|
-
}
|
|
120
|
-
export declare enum DuploTrainSound {
|
|
121
|
-
BRAKE = 3,
|
|
122
|
-
DEPARTURE = 5,
|
|
123
|
-
REFILL = 7,
|
|
124
|
-
HORN = 9,
|
|
125
|
-
STEAM = 10
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* Duplo Train Base Speaker
|
|
129
|
-
*/
|
|
130
|
-
export declare class DuploTrainBaseSpeaker extends Device {
|
|
131
|
-
constructor(hub: BaseHub, portInfo: PortInfo);
|
|
132
|
-
/**
|
|
133
|
-
* Subscribe to speaker updates (not applicable)
|
|
134
|
-
*/
|
|
135
|
-
subscribe(_mode?: number): Promise<void>;
|
|
136
|
-
/**
|
|
137
|
-
* Play a predefined sound
|
|
138
|
-
*/
|
|
139
|
-
playSound(sound: DuploTrainSound): Promise<void>;
|
|
140
|
-
}
|
package/dist/node/devices/led.js
DELETED
|
@@ -1,295 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* LED and Light devices 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.DuploTrainBaseSpeaker = exports.DuploTrainSound = exports.PiezoBuzzer = exports.Technic3x3ColorLightMatrix = exports.LEDLights = exports.HubLED = 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
|
-
// Hub LED
|
|
46
|
-
// ============================================================================
|
|
47
|
-
/**
|
|
48
|
-
* Hub LED - The built-in RGB LED on hubs
|
|
49
|
-
*/
|
|
50
|
-
class HubLED extends device_1.Device {
|
|
51
|
-
constructor(hub, portInfo) {
|
|
52
|
-
super(hub, portInfo);
|
|
53
|
-
this._color = types_1.Color.NONE;
|
|
54
|
-
this._rgb = { r: 0, g: 0, b: 0 };
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Get current color
|
|
58
|
-
*/
|
|
59
|
-
get color() {
|
|
60
|
-
return this._color;
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Get current RGB values
|
|
64
|
-
*/
|
|
65
|
-
get rgb() {
|
|
66
|
-
return this._rgb;
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* Subscribe to LED updates (not applicable)
|
|
70
|
-
*/
|
|
71
|
-
async subscribe(_mode) {
|
|
72
|
-
// LEDs don't have sensor feedback
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Set LED to a predefined color
|
|
76
|
-
*/
|
|
77
|
-
async setColor(color) {
|
|
78
|
-
this._color = color;
|
|
79
|
-
if (this._hub instanceof hub_1.LWP3Hub) {
|
|
80
|
-
await this._hub.setLEDColor(color);
|
|
81
|
-
}
|
|
82
|
-
else if (this._hub instanceof hub_1.WeDo2Hub) {
|
|
83
|
-
await this._hub.setLEDColor(color);
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* Set LED to RGB color
|
|
88
|
-
*/
|
|
89
|
-
async setRGB(red, green, blue) {
|
|
90
|
-
red = Math.max(0, Math.min(255, red));
|
|
91
|
-
green = Math.max(0, Math.min(255, green));
|
|
92
|
-
blue = Math.max(0, Math.min(255, blue));
|
|
93
|
-
this._rgb = { r: red, g: green, b: blue };
|
|
94
|
-
this._color = types_1.Color.NONE; // Custom color
|
|
95
|
-
if (this._hub instanceof hub_1.LWP3Hub) {
|
|
96
|
-
await this._hub.setLEDRGB(red, green, blue);
|
|
97
|
-
}
|
|
98
|
-
else if (this._hub instanceof hub_1.WeDo2Hub) {
|
|
99
|
-
await this._hub.setLEDRGB(red, green, blue);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
/**
|
|
103
|
-
* Turn off LED
|
|
104
|
-
*/
|
|
105
|
-
async turnOff() {
|
|
106
|
-
await this.setColor(types_1.Color.NONE);
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
exports.HubLED = HubLED;
|
|
110
|
-
// ============================================================================
|
|
111
|
-
// LED Lights (External)
|
|
112
|
-
// ============================================================================
|
|
113
|
-
/**
|
|
114
|
-
* External LED Lights (e.g., Boost LED lights)
|
|
115
|
-
*/
|
|
116
|
-
class LEDLights extends device_1.Device {
|
|
117
|
-
constructor(hub, portInfo) {
|
|
118
|
-
super(hub, portInfo);
|
|
119
|
-
this._brightness = 0;
|
|
120
|
-
}
|
|
121
|
-
/**
|
|
122
|
-
* Get current brightness (0-100)
|
|
123
|
-
*/
|
|
124
|
-
get brightness() {
|
|
125
|
-
return this._brightness;
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* Subscribe to LED updates (not applicable)
|
|
129
|
-
*/
|
|
130
|
-
async subscribe(_mode) {
|
|
131
|
-
// LEDs don't have sensor feedback
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Set brightness (0-100)
|
|
135
|
-
*/
|
|
136
|
-
async setBrightness(brightness) {
|
|
137
|
-
brightness = Math.max(0, Math.min(100, brightness));
|
|
138
|
-
this._brightness = brightness;
|
|
139
|
-
if (this._hub instanceof hub_1.LWP3Hub) {
|
|
140
|
-
// Use motor power command for LED lights
|
|
141
|
-
await this._hub.motorPower(this._portId, brightness);
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
/**
|
|
145
|
-
* Turn off LEDs
|
|
146
|
-
*/
|
|
147
|
-
async turnOff() {
|
|
148
|
-
await this.setBrightness(0);
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
exports.LEDLights = LEDLights;
|
|
152
|
-
// ============================================================================
|
|
153
|
-
// Technic 3x3 Color Light Matrix
|
|
154
|
-
// ============================================================================
|
|
155
|
-
/**
|
|
156
|
-
* Technic 3x3 Color Light Matrix
|
|
157
|
-
*/
|
|
158
|
-
class Technic3x3ColorLightMatrix extends device_1.Device {
|
|
159
|
-
constructor(hub, portInfo) {
|
|
160
|
-
super(hub, portInfo);
|
|
161
|
-
this._pixels = [
|
|
162
|
-
[types_1.Color.NONE, types_1.Color.NONE, types_1.Color.NONE],
|
|
163
|
-
[types_1.Color.NONE, types_1.Color.NONE, types_1.Color.NONE],
|
|
164
|
-
[types_1.Color.NONE, types_1.Color.NONE, types_1.Color.NONE],
|
|
165
|
-
];
|
|
166
|
-
}
|
|
167
|
-
/**
|
|
168
|
-
* Get current pixel colors
|
|
169
|
-
*/
|
|
170
|
-
get pixels() {
|
|
171
|
-
return this._pixels;
|
|
172
|
-
}
|
|
173
|
-
/**
|
|
174
|
-
* Subscribe to matrix updates (not applicable)
|
|
175
|
-
*/
|
|
176
|
-
async subscribe(_mode) {
|
|
177
|
-
// Light matrix doesn't have sensor feedback
|
|
178
|
-
}
|
|
179
|
-
/**
|
|
180
|
-
* Set a single pixel color
|
|
181
|
-
*/
|
|
182
|
-
async setPixel(x, y, color) {
|
|
183
|
-
if (x < 0 || x > 2 || y < 0 || y > 2) {
|
|
184
|
-
throw new Error("Pixel coordinates out of range (0-2)");
|
|
185
|
-
}
|
|
186
|
-
this._pixels[y][x] = color;
|
|
187
|
-
await this._updateMatrix();
|
|
188
|
-
}
|
|
189
|
-
/**
|
|
190
|
-
* Set all pixels to a single color
|
|
191
|
-
*/
|
|
192
|
-
async setAll(color) {
|
|
193
|
-
for (let y = 0; y < 3; y++) {
|
|
194
|
-
for (let x = 0; x < 3; x++) {
|
|
195
|
-
this._pixels[y][x] = color;
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
await this._updateMatrix();
|
|
199
|
-
}
|
|
200
|
-
/**
|
|
201
|
-
* Set all pixels from a 3x3 array
|
|
202
|
-
*/
|
|
203
|
-
async setMatrix(pixels) {
|
|
204
|
-
if (pixels.length !== 3 || pixels.some(row => row.length !== 3)) {
|
|
205
|
-
throw new Error("Pixels must be a 3x3 array");
|
|
206
|
-
}
|
|
207
|
-
this._pixels = pixels.map(row => [...row]);
|
|
208
|
-
await this._updateMatrix();
|
|
209
|
-
}
|
|
210
|
-
/**
|
|
211
|
-
* Clear the matrix (turn all pixels off)
|
|
212
|
-
*/
|
|
213
|
-
async clear() {
|
|
214
|
-
await this.setAll(types_1.Color.NONE);
|
|
215
|
-
}
|
|
216
|
-
async _updateMatrix() {
|
|
217
|
-
if (this._hub instanceof hub_1.LWP3Hub) {
|
|
218
|
-
// Flatten 2D array to 1D (row by row)
|
|
219
|
-
const flatPixels = this._pixels.flat();
|
|
220
|
-
const message = commands.setLightMatrix(this._portId, flatPixels);
|
|
221
|
-
await this._hub.sendRaw(message);
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
exports.Technic3x3ColorLightMatrix = Technic3x3ColorLightMatrix;
|
|
226
|
-
// ============================================================================
|
|
227
|
-
// Piezo Buzzer
|
|
228
|
-
// ============================================================================
|
|
229
|
-
/**
|
|
230
|
-
* Piezo Buzzer (WeDo 2.0)
|
|
231
|
-
*/
|
|
232
|
-
class PiezoBuzzer extends device_1.Device {
|
|
233
|
-
constructor(hub, portInfo) {
|
|
234
|
-
super(hub, portInfo);
|
|
235
|
-
}
|
|
236
|
-
/**
|
|
237
|
-
* Subscribe to buzzer updates (not applicable)
|
|
238
|
-
*/
|
|
239
|
-
async subscribe(_mode) {
|
|
240
|
-
// Buzzer doesn't have sensor feedback
|
|
241
|
-
}
|
|
242
|
-
/**
|
|
243
|
-
* Play a tone at specified frequency for specified duration
|
|
244
|
-
*/
|
|
245
|
-
async playTone(frequency, duration) {
|
|
246
|
-
if (this._hub instanceof hub_1.WeDo2Hub) {
|
|
247
|
-
await this._hub.playTone(frequency, duration);
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
/**
|
|
251
|
-
* Stop playing tone
|
|
252
|
-
*/
|
|
253
|
-
async stop() {
|
|
254
|
-
if (this._hub instanceof hub_1.WeDo2Hub) {
|
|
255
|
-
await this._hub.stopTone();
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
}
|
|
259
|
-
exports.PiezoBuzzer = PiezoBuzzer;
|
|
260
|
-
// ============================================================================
|
|
261
|
-
// Duplo Train Speaker
|
|
262
|
-
// ============================================================================
|
|
263
|
-
var DuploTrainSound;
|
|
264
|
-
(function (DuploTrainSound) {
|
|
265
|
-
DuploTrainSound[DuploTrainSound["BRAKE"] = 3] = "BRAKE";
|
|
266
|
-
DuploTrainSound[DuploTrainSound["DEPARTURE"] = 5] = "DEPARTURE";
|
|
267
|
-
DuploTrainSound[DuploTrainSound["REFILL"] = 7] = "REFILL";
|
|
268
|
-
DuploTrainSound[DuploTrainSound["HORN"] = 9] = "HORN";
|
|
269
|
-
DuploTrainSound[DuploTrainSound["STEAM"] = 10] = "STEAM";
|
|
270
|
-
})(DuploTrainSound || (exports.DuploTrainSound = DuploTrainSound = {}));
|
|
271
|
-
/**
|
|
272
|
-
* Duplo Train Base Speaker
|
|
273
|
-
*/
|
|
274
|
-
class DuploTrainBaseSpeaker extends device_1.Device {
|
|
275
|
-
constructor(hub, portInfo) {
|
|
276
|
-
super(hub, portInfo);
|
|
277
|
-
}
|
|
278
|
-
/**
|
|
279
|
-
* Subscribe to speaker updates (not applicable)
|
|
280
|
-
*/
|
|
281
|
-
async subscribe(_mode) {
|
|
282
|
-
// Speaker doesn't have sensor feedback
|
|
283
|
-
}
|
|
284
|
-
/**
|
|
285
|
-
* Play a predefined sound
|
|
286
|
-
*/
|
|
287
|
-
async playSound(sound) {
|
|
288
|
-
if (this._hub instanceof hub_1.LWP3Hub) {
|
|
289
|
-
const message = commands.playSound(this._portId, sound);
|
|
290
|
-
await this._hub.sendRaw(message);
|
|
291
|
-
}
|
|
292
|
-
}
|
|
293
|
-
}
|
|
294
|
-
exports.DuploTrainBaseSpeaker = DuploTrainBaseSpeaker;
|
|
295
|
-
//# sourceMappingURL=led.js.map
|