Merge branch 'feature/devices' of github.com:nathankellenicki/node-poweredup into feature/devices
Some checks failed
continuous-integration/drone/push Build is failing

This commit is contained in:
Nathan Kellenicki 2020-01-08 14:38:57 -08:00
commit afa7c74f82
16 changed files with 39 additions and 38 deletions

View File

@ -23,7 +23,7 @@ export class ColorDistanceSensor extends Device {
* @event ColorDistanceSensor#color * @event ColorDistanceSensor#color
* @param {Color} color * @param {Color} color
*/ */
this.emitGlobal("color", color); this.emitGlobal("color", { color });
} }
break; break;
@ -39,7 +39,7 @@ export class ColorDistanceSensor extends Device {
* @event ColorDistanceSensor#distance * @event ColorDistanceSensor#distance
* @param {number} distance Distance, in millimeters. * @param {number} distance Distance, in millimeters.
*/ */
this.emitGlobal("distance", distance); this.emitGlobal("distance", { distance });
} }
break; break;
@ -65,7 +65,7 @@ export class ColorDistanceSensor extends Device {
*/ */
if (message[4] <= 10) { if (message[4] <= 10) {
const color = message[4]; const color = message[4];
this.emitGlobal("colorAndDistance", color, distance); this.emitGlobal("colorAndDistance", { color, distance });
} }
break; break;

View File

@ -17,7 +17,7 @@ export class CurrentSensor extends Device {
case CurrentSensor.Mode.CURRENT: case CurrentSensor.Mode.CURRENT:
if (this.isWeDo2SmartHub) { if (this.isWeDo2SmartHub) {
const current = message.readInt16LE(2) / 1000; const current = message.readInt16LE(2) / 1000;
this.emitGlobal("current", current); this.emitGlobal("current", { current });
} else { } else {
let maxCurrentValue = CurrentSensor.MaxCurrentValue[this.hub.type]; let maxCurrentValue = CurrentSensor.MaxCurrentValue[this.hub.type];
if (maxCurrentValue === undefined) { if (maxCurrentValue === undefined) {
@ -33,7 +33,7 @@ export class CurrentSensor extends Device {
* @event CurrentSensor#current * @event CurrentSensor#current
* @param {number} current * @param {number} current
*/ */
this.emitGlobal("current", current); this.emitGlobal("current", { current });
} }
break; break;
} }

View File

@ -113,7 +113,7 @@ export class Device extends EventEmitter {
} }
public receive (message: Buffer) { public receive (message: Buffer) {
this.emitGlobal("receive", message); this.emitGlobal("receive", { message });
} }
public emitGlobal (event: string, ...args: any[]) { public emitGlobal (event: string, ...args: any[]) {

View File

@ -23,7 +23,7 @@ export class DuploTrainBaseColorSensor extends Device {
* @event DuploTrainBaseColorSensor#color * @event DuploTrainBaseColorSensor#color
* @param {Color} color * @param {Color} color
*/ */
this.emitGlobal("color", color); this.emitGlobal("color", { color });
} }
break; break;

View File

@ -22,7 +22,7 @@ export class DuploTrainBaseSpeedometer extends Device {
* @event DuploTrainBaseSpeedometer#speed * @event DuploTrainBaseSpeedometer#speed
* @param {number} speed * @param {number} speed
*/ */
this.emitGlobal("speed", speed); this.emitGlobal("speed", { speed });
break; break;
} }

View File

@ -19,12 +19,13 @@ export class MotionSensor extends Device {
if (message[this.isWeDo2SmartHub ? 3 : 5] === 1) { if (message[this.isWeDo2SmartHub ? 3 : 5] === 1) {
distance = distance + 255; distance = distance + 255;
} }
distance *= 10;
/** /**
* Emits when a distance sensor is activated. * Emits when a distance sensor is activated.
* @event MotionSensor#distance * @event MotionSensor#distance
* @param {number} distance Distance, in millimeters. * @param {number} distance Distance, in millimeters.
*/ */
this.emitGlobal("distance", distance * 10); this.emitGlobal("distance", { distance });
break; break;
} }
} }

View File

@ -21,9 +21,9 @@ export class MoveHubTiltSensor extends Device {
* @param {number} x * @param {number} x
* @param {number} y * @param {number} y
*/ */
const tiltX = message.readInt8(4); const x = -message.readInt8(4);
const tiltY = message.readInt8(5); const y = message.readInt8(5);
this.emitGlobal("tilt", -tiltX, tiltY); this.emitGlobal("tilt", { x, y });
break; break;
} }
} }

View File

@ -21,7 +21,7 @@ export class RemoteControlButton extends Device {
* @param {number} event * @param {number} event
*/ */
const event = message[4]; const event = message[4];
this.emitGlobal("remoteButton", event); this.emitGlobal("remoteButton", { event });
break; break;
} }
} }

View File

@ -22,7 +22,7 @@ export class TachoMotor extends BasicMotor {
* @event TachoMotor#rotate * @event TachoMotor#rotate
* @param {number} rotation * @param {number} rotation
*/ */
this.emitGlobal("rotate", rotation); this.emitGlobal("rotate", { rotation });
break; break;
} }
} }

View File

@ -23,10 +23,10 @@ export class TechnicMediumHubAccelerometerSensor extends Device {
* @param {number} y * @param {number} y
* @param {number} z * @param {number} z
*/ */
const accelX = Math.round(message.readInt16LE(4) / 4.096); const x = Math.round(message.readInt16LE(4) / 4.096);
const accelY = Math.round(message.readInt16LE(6) / 4.096); const y = Math.round(message.readInt16LE(6) / 4.096);
const accelZ = Math.round(message.readInt16LE(8) / 4.096); const z = Math.round(message.readInt16LE(8) / 4.096);
this.emitGlobal("accel", accelX, accelY, accelZ); this.emitGlobal("accel", { x, y, z });
break; break;
} }
} }

View File

@ -22,10 +22,10 @@ export class TechnicMediumHubGyroSensor extends Device {
* @param {number} y * @param {number} y
* @param {number} z * @param {number} z
*/ */
const gyroX = Math.round(message.readInt16LE(4) * 7 / 400); const x = Math.round(message.readInt16LE(4) * 7 / 400);
const gyroY = Math.round(message.readInt16LE(6) * 7 / 400); const y = Math.round(message.readInt16LE(6) * 7 / 400);
const gyroZ = Math.round(message.readInt16LE(8) * 7 / 400); const z = Math.round(message.readInt16LE(8) * 7 / 400);
this.emitGlobal("gyro", gyroX, gyroY, -gyroZ); this.emitGlobal("gyro", { x, y, z });
break; break;
} }
} }

View File

@ -22,10 +22,10 @@ export class TechnicMediumHubTiltSensor extends Device {
* @param {number} y * @param {number} y
* @param {number} z * @param {number} z
*/ */
const tiltZ = message.readInt16LE(4); const z = -message.readInt16LE(4);
const tiltY = message.readInt16LE(6); const y = message.readInt16LE(6);
const tiltX = message.readInt16LE(8); const x = message.readInt16LE(8);
this.emitGlobal("tilt", tiltX, tiltY, -tiltZ); this.emitGlobal("tilt", { x, y, z });
break; break;
} }
} }

View File

@ -15,15 +15,15 @@ export class TiltSensor extends Device {
switch (mode) { switch (mode) {
case TiltSensor.Mode.TILT: case TiltSensor.Mode.TILT:
const tiltX = message.readInt8(this.isWeDo2SmartHub ? 2 : 4); const x = message.readInt8(this.isWeDo2SmartHub ? 2 : 4);
const tiltY = message.readInt8(this.isWeDo2SmartHub ? 3 : 5); const y = message.readInt8(this.isWeDo2SmartHub ? 3 : 5);
/** /**
* Emits when a tilt sensor is activated. * Emits when a tilt sensor is activated.
* @event LPF2Hub#tilt * @event LPF2Hub#tilt
* @param {number} x * @param {number} x
* @param {number} y * @param {number} y
*/ */
this.emitGlobal("tilt", tiltX, tiltY); this.emitGlobal("tilt", { x, y });
break; break;
} }
} }

View File

@ -17,7 +17,7 @@ export class VoltageSensor extends Device {
case VoltageSensor.Mode.VOLTAGE: case VoltageSensor.Mode.VOLTAGE:
if (this.isWeDo2SmartHub) { if (this.isWeDo2SmartHub) {
const voltage = message.readInt16LE(2) / 40; const voltage = message.readInt16LE(2) / 40;
this.emitGlobal("voltage", voltage); this.emitGlobal("voltage", { voltage });
} else { } else {
let maxVoltageValue = VoltageSensor.MaxVoltageValue[this.hub.type]; let maxVoltageValue = VoltageSensor.MaxVoltageValue[this.hub.type];
if (maxVoltageValue === undefined) { if (maxVoltageValue === undefined) {
@ -33,7 +33,7 @@ export class VoltageSensor extends Device {
* @event VoltageSensor#voltage * @event VoltageSensor#voltage
* @param {number} voltage * @param {number} voltage
*/ */
this.emitGlobal("voltage", voltage); this.emitGlobal("voltage", { voltage });
} }
break; break;
} }

View File

@ -208,10 +208,10 @@ export class LPF2Hub extends BaseHub {
* @param {string} button * @param {string} button
* @param {ButtonState} state * @param {ButtonState} state
*/ */
this.emit("button", "GREEN", Consts.ButtonState.PRESSED); this.emit("button", { event: Consts.ButtonState.PRESSED });
return; return;
} else if (message[5] === 0) { } else if (message[5] === 0) {
this.emit("button", "GREEN", Consts.ButtonState.RELEASED); this.emit("button", { event: Consts.ButtonState.RELEASED });
return; return;
} }
@ -229,7 +229,7 @@ export class LPF2Hub extends BaseHub {
const rssi = message.readInt8(5); const rssi = message.readInt8(5);
if (rssi !== 0) { if (rssi !== 0) {
this._rssi = rssi; this._rssi = rssi;
this.emit("rssiChange", this._rssi); this.emit("rssi", { rssi: this._rssi });
} }
// primary MAC Address // primary MAC Address
@ -241,7 +241,7 @@ export class LPF2Hub extends BaseHub {
const batteryLevel = message[5]; const batteryLevel = message[5];
if (batteryLevel !== this._batteryLevel) { if (batteryLevel !== this._batteryLevel) {
this._batteryLevel = batteryLevel; this._batteryLevel = batteryLevel;
this.emit("batteryLevel", batteryLevel); this.emit("batteryLevel", { batteryLevel });
} }
} }

View File

@ -168,7 +168,7 @@ export class WeDo2SmartHub extends BaseHub {
const batteryLevel = data[0]; const batteryLevel = data[0];
if (batteryLevel !== this._batteryLevel) { if (batteryLevel !== this._batteryLevel) {
this._batteryLevel = batteryLevel; this._batteryLevel = batteryLevel;
this.emit("batteryLevel", batteryLevel); this.emit("batteryLevel", { batteryLevel });
} }
} }
@ -209,10 +209,10 @@ export class WeDo2SmartHub extends BaseHub {
* @param {string} button * @param {string} button
* @param {ButtonState} state * @param {ButtonState} state
*/ */
this.emit("button", "GREEN", Consts.ButtonState.PRESSED); this.emit("button", { event: Consts.ButtonState.PRESSED });
return; return;
} else if (message[0] === 0x00) { } else if (message[0] === 0x00) {
this.emit("button", "GREEN", Consts.ButtonState.RELEASED); this.emit("button", { event: Consts.ButtonState.RELEASED });
return; return;
} }