## Classes
LPF2EventEmitter
LPF2HubHub
WeDo2HubHub
HubEventEmitter
## LPF2 ⇐ EventEmitter **Kind**: global class **Extends**: EventEmitter * [LPF2](#LPF2) ⇐ EventEmitter * [.scan()](#LPF2+scan) * [.stop()](#LPF2+stop) * [.getConnectedDeviceByUUID(uuid)](#LPF2+getConnectedDeviceByUUID) ⇒ [Hub](#Hub) \| null * [.getConnectedDevices()](#LPF2+getConnectedDevices) ⇒ [Array.<Hub>](#Hub) * ["discover" (hub)](#LPF2+event_discover) ### lpF2.scan() Begin scanning for LPF2 Hub devices. **Kind**: instance method of [LPF2](#LPF2) ### lpF2.stop() Stop scanning for LPF2 Hub devices. **Kind**: instance method of [LPF2](#LPF2) ### lpF2.getConnectedDeviceByUUID(uuid) ⇒ [Hub](#Hub) \| null Retrieve a LPF2 Hub device by UUID. **Kind**: instance method of [LPF2](#LPF2) | Param | Type | | --- | --- | | uuid | string | ### lpF2.getConnectedDevices() ⇒ [Array.<Hub>](#Hub) Retrieve a list of LPF2 Hub devices. **Kind**: instance method of [LPF2](#LPF2) ### "discover" (hub) Emits when a LPF2 Hub device is found. **Kind**: event emitted by [LPF2](#LPF2) | Param | Type | | --- | --- | | hub | [WeDo2Hub](#WeDo2Hub) \| [LPF2Hub](#LPF2Hub) | ## LPF2Hub ⇐ [Hub](#Hub) **Kind**: global class **Extends**: [Hub](#Hub) * [LPF2Hub](#LPF2Hub) ⇐ [Hub](#Hub) * [.setLEDColor(color)](#LPF2Hub+setLEDColor) ⇒ Promise * [.setMotorSpeed(port, speed, [time])](#LPF2Hub+setMotorSpeed) ⇒ Promise * [.setMotorAngle(port, angle, [speed])](#LPF2Hub+setMotorAngle) ⇒ Promise * [.connect()](#Hub+connect) ⇒ Promise * [.disconnect()](#Hub+disconnect) ⇒ Promise * [.subscribe(port, [mode])](#Hub+subscribe) ⇒ Promise * [.unsubscribe(port)](#Hub+unsubscribe) ⇒ Promise * [.sleep(delay)](#Hub+sleep) ⇒ Promise * [.wait(commands)](#Hub+wait) ⇒ Promise * ["button" (button, state)](#LPF2Hub+event_button) * ["distance" (port, distance)](#LPF2Hub+event_distance) * ["color" (port, color)](#LPF2Hub+event_color) * ["tilt" (port, x, y)](#LPF2Hub+event_tilt) * ["rotate" (port, rotation)](#LPF2Hub+event_rotate) ### lpF2Hub.setLEDColor(color) ⇒ Promise Set the color of the LED on the Hub via a color value. **Kind**: instance method of [LPF2Hub](#LPF2Hub) **Returns**: Promise - Resolved upon successful issuance of command. | Param | Type | Description | | --- | --- | --- | | color | number | A number representing one of the LED color consts. | ### lpF2Hub.setMotorSpeed(port, speed, [time]) ⇒ Promise Set the motor speed on a given port. **Kind**: instance method of [LPF2Hub](#LPF2Hub) **Returns**: Promise - Resolved upon successful completion of command. If time is specified, this is once the motor is finished. | Param | Type | Description | | --- | --- | --- | | port | string | | | speed | number | For forward, a value between 1 - 100 should be set. For reverse, a value between -1 to -100. Stop is 0. | | [time] | number | How long to activate the motor for (in milliseconds). Leave empty to turn the motor on indefinitely. | ### lpF2Hub.setMotorAngle(port, angle, [speed]) ⇒ Promise Rotate a motor by a given angle. **Kind**: instance method of [LPF2Hub](#LPF2Hub) **Returns**: Promise - Resolved upon successful completion of command (ie. once the motor is finished). | Param | Type | Default | Description | | --- | --- | --- | --- | | port | string | | | | angle | number | | How much the motor should be rotated (in degrees). | | [speed] | number | 100 | How fast the motor should be rotated. | ### lpF2Hub.connect() ⇒ Promise Connect to the Hub. **Kind**: instance method of [LPF2Hub](#LPF2Hub) **Overrides**: [connect](#Hub+connect) **Returns**: Promise - Resolved upon successful connect. ### lpF2Hub.disconnect() ⇒ Promise Disconnect the Hub. **Kind**: instance method of [LPF2Hub](#LPF2Hub) **Returns**: Promise - Resolved upon successful disconnect. ### lpF2Hub.subscribe(port, [mode]) ⇒ Promise Subscribe to sensor notifications on a given port. **Kind**: instance method of [LPF2Hub](#LPF2Hub) **Returns**: Promise - Resolved upon successful issuance of command. | Param | Type | Description | | --- | --- | --- | | port | string | | | [mode] | number | The sensor mode to activate. If no mode is provided, the default for that sensor will be chosen. | ### lpF2Hub.unsubscribe(port) ⇒ Promise Unsubscribe to sensor notifications on a given port. **Kind**: instance method of [LPF2Hub](#LPF2Hub) **Returns**: Promise - Resolved upon successful issuance of command. | Param | Type | | --- | --- | | port | string | ### lpF2Hub.sleep(delay) ⇒ Promise Sleep a given amount of time. This is a helper method to make it easier to add delays into a chain of commands. **Kind**: instance method of [LPF2Hub](#LPF2Hub) **Returns**: Promise - Resolved after the delay is finished. | Param | Type | Description | | --- | --- | --- | | delay | number | How long to sleep (in milliseconds). | ### lpF2Hub.wait(commands) ⇒ Promise Wait until a given list of concurrently running commands are complete. This is a helper method to make it easier to wait for concurrent commands to complete. **Kind**: instance method of [LPF2Hub](#LPF2Hub) **Returns**: Promise - Resolved after the commands are finished. | Param | Type | Description | | --- | --- | --- | | commands | Array.<Promise.<any>> | Array of executing commands. | ### "button" (button, state) Emits when a button is pressed. **Kind**: event emitted by [LPF2Hub](#LPF2Hub) | Param | Type | Description | | --- | --- | --- | | button | string | | | state | number | A number representing one of the button state consts. | ### "distance" (port, distance) Emits when a distance sensor is activated. **Kind**: event emitted by [LPF2Hub](#LPF2Hub) | Param | Type | Description | | --- | --- | --- | | port | string | | | distance | number | Distance, in millimeters. | ### "color" (port, color) Emits when a color sensor is activated. **Kind**: event emitted by [LPF2Hub](#LPF2Hub) | Param | Type | Description | | --- | --- | --- | | port | string | | | color | number | A number representing one of the LED color consts. | ### "tilt" (port, x, y) Emits when a tilt sensor is activated. **Kind**: event emitted by [LPF2Hub](#LPF2Hub) | Param | Type | Description | | --- | --- | --- | | port | string | If the event is fired from the Move Hub's in-built tilt sensor, the special port "TILT" is used. | | x | number | | | y | number | | ### "rotate" (port, rotation) Emits when a rotation sensor is activated. **Kind**: event emitted by [LPF2Hub](#LPF2Hub) | Param | Type | | --- | --- | | port | string | | rotation | number | ## WeDo2Hub ⇐ [Hub](#Hub) **Kind**: global class **Extends**: [Hub](#Hub) * [WeDo2Hub](#WeDo2Hub) ⇐ [Hub](#Hub) * [.setLEDColor(color)](#WeDo2Hub+setLEDColor) ⇒ Promise * [.setLEDRGB(red, green, blue)](#WeDo2Hub+setLEDRGB) ⇒ Promise * [.setMotorSpeed(port, speed)](#WeDo2Hub+setMotorSpeed) ⇒ Promise * [.connect()](#Hub+connect) ⇒ Promise * [.disconnect()](#Hub+disconnect) ⇒ Promise * [.subscribe(port, [mode])](#Hub+subscribe) ⇒ Promise * [.unsubscribe(port)](#Hub+unsubscribe) ⇒ Promise * [.sleep(delay)](#Hub+sleep) ⇒ Promise * [.wait(commands)](#Hub+wait) ⇒ Promise * ["button" (button, state)](#WeDo2Hub+event_button) * ["distance" (port, distance)](#WeDo2Hub+event_distance) * ["color" (port, color)](#WeDo2Hub+event_color) * ["tilt" (port, x, y)](#WeDo2Hub+event_tilt) * ["rotate" (port, rotation)](#WeDo2Hub+event_rotate) ### weDo2Hub.setLEDColor(color) ⇒ Promise Set the color of the LED on the Hub via a color value. **Kind**: instance method of [WeDo2Hub](#WeDo2Hub) **Returns**: Promise - Resolved upon successful issuance of command. | Param | Type | Description | | --- | --- | --- | | color | number | A number representing one of the LED color consts. | ### weDo2Hub.setLEDRGB(red, green, blue) ⇒ Promise Set the color of the LED on the Hub via RGB values. **Kind**: instance method of [WeDo2Hub](#WeDo2Hub) **Returns**: Promise - Resolved upon successful issuance of command. | Param | Type | | --- | --- | | red | number | | green | number | | blue | number | ### weDo2Hub.setMotorSpeed(port, speed) ⇒ Promise Set the motor speed on a given port. **Kind**: instance method of [WeDo2Hub](#WeDo2Hub) **Returns**: Promise - Resolved upon successful issuance of command. | Param | Type | Description | | --- | --- | --- | | port | string | | | speed | number | For forward, a value between 1 - 100 should be set. For reverse, a value between -1 to -100. Stop is 0. | ### weDo2Hub.connect() ⇒ Promise Connect to the Hub. **Kind**: instance method of [WeDo2Hub](#WeDo2Hub) **Overrides**: [connect](#Hub+connect) **Returns**: Promise - Resolved upon successful connect. ### weDo2Hub.disconnect() ⇒ Promise Disconnect the Hub. **Kind**: instance method of [WeDo2Hub](#WeDo2Hub) **Returns**: Promise - Resolved upon successful disconnect. ### weDo2Hub.subscribe(port, [mode]) ⇒ Promise Subscribe to sensor notifications on a given port. **Kind**: instance method of [WeDo2Hub](#WeDo2Hub) **Returns**: Promise - Resolved upon successful issuance of command. | Param | Type | Description | | --- | --- | --- | | port | string | | | [mode] | number | The sensor mode to activate. If no mode is provided, the default for that sensor will be chosen. | ### weDo2Hub.unsubscribe(port) ⇒ Promise Unsubscribe to sensor notifications on a given port. **Kind**: instance method of [WeDo2Hub](#WeDo2Hub) **Returns**: Promise - Resolved upon successful issuance of command. | Param | Type | | --- | --- | | port | string | ### weDo2Hub.sleep(delay) ⇒ Promise Sleep a given amount of time. This is a helper method to make it easier to add delays into a chain of commands. **Kind**: instance method of [WeDo2Hub](#WeDo2Hub) **Returns**: Promise - Resolved after the delay is finished. | Param | Type | Description | | --- | --- | --- | | delay | number | How long to sleep (in milliseconds). | ### weDo2Hub.wait(commands) ⇒ Promise Wait until a given list of concurrently running commands are complete. This is a helper method to make it easier to wait for concurrent commands to complete. **Kind**: instance method of [WeDo2Hub](#WeDo2Hub) **Returns**: Promise - Resolved after the commands are finished. | Param | Type | Description | | --- | --- | --- | | commands | Array.<Promise.<any>> | Array of executing commands. | ### "button" (button, state) Emits when a button is pressed. **Kind**: event emitted by [WeDo2Hub](#WeDo2Hub) | Param | Type | Description | | --- | --- | --- | | button | string | | | state | number | A number representing one of the button state consts. | ### "distance" (port, distance) Emits when a distance sensor is activated. **Kind**: event emitted by [WeDo2Hub](#WeDo2Hub) | Param | Type | Description | | --- | --- | --- | | port | string | | | distance | number | Distance, in millimeters. | ### "color" (port, color) Emits when a color sensor is activated. **Kind**: event emitted by [WeDo2Hub](#WeDo2Hub) | Param | Type | Description | | --- | --- | --- | | port | string | | | color | number | A number representing one of the LED color consts. | ### "tilt" (port, x, y) Emits when a tilt sensor is activated. **Kind**: event emitted by [WeDo2Hub](#WeDo2Hub) | Param | Type | | --- | --- | | port | string | | x | number | | y | number | ### "rotate" (port, rotation) Emits when a rotation sensor is activated. **Kind**: event emitted by [WeDo2Hub](#WeDo2Hub) | Param | Type | | --- | --- | | port | string | | rotation | number | ## Hub ⇐ EventEmitter **Kind**: global class **Extends**: EventEmitter * [Hub](#Hub) ⇐ EventEmitter * [.connect()](#Hub+connect) ⇒ Promise * [.disconnect()](#Hub+disconnect) ⇒ Promise * [.subscribe(port, [mode])](#Hub+subscribe) ⇒ Promise * [.unsubscribe(port)](#Hub+unsubscribe) ⇒ Promise * [.sleep(delay)](#Hub+sleep) ⇒ Promise * [.wait(commands)](#Hub+wait) ⇒ Promise ### hub.connect() ⇒ Promise Connect to the Hub. **Kind**: instance method of [Hub](#Hub) **Returns**: Promise - Resolved upon successful connect. ### hub.disconnect() ⇒ Promise Disconnect the Hub. **Kind**: instance method of [Hub](#Hub) **Returns**: Promise - Resolved upon successful disconnect. ### hub.subscribe(port, [mode]) ⇒ Promise Subscribe to sensor notifications on a given port. **Kind**: instance method of [Hub](#Hub) **Returns**: Promise - Resolved upon successful issuance of command. | Param | Type | Description | | --- | --- | --- | | port | string | | | [mode] | number | The sensor mode to activate. If no mode is provided, the default for that sensor will be chosen. | ### hub.unsubscribe(port) ⇒ Promise Unsubscribe to sensor notifications on a given port. **Kind**: instance method of [Hub](#Hub) **Returns**: Promise - Resolved upon successful issuance of command. | Param | Type | | --- | --- | | port | string | ### hub.sleep(delay) ⇒ Promise Sleep a given amount of time. This is a helper method to make it easier to add delays into a chain of commands. **Kind**: instance method of [Hub](#Hub) **Returns**: Promise - Resolved after the delay is finished. | Param | Type | Description | | --- | --- | --- | | delay | number | How long to sleep (in milliseconds). | ### hub.wait(commands) ⇒ Promise Wait until a given list of concurrently running commands are complete. This is a helper method to make it easier to wait for concurrent commands to complete. **Kind**: instance method of [Hub](#Hub) **Returns**: Promise - Resolved after the commands are finished. | Param | Type | Description | | --- | --- | --- | | commands | Array.<Promise.<any>> | Array of executing commands. |