Class: DuploTrainBase

DuploTrainBase()

new DuploTrainBase()

The DuploTrainBase is emitted if the discovered device is a Duplo Train Base.
Source:

Extends

Members

(readonly) batteryLevel

Properties:
Name Type Description
batteryLevel number Battery level of the hub (Percentage between 0-100)
Overrides:
Source:

(readonly) current

Properties:
Name Type Description
current number Current usage of the hub (Amps)
Inherited From:
Source:

(readonly) firmwareVersion

Properties:
Name Type Description
firmwareVersion string Firmware version of the hub
Overrides:
Source:

(readonly) name

Properties:
Name Type Description
name string Name of the hub
Overrides:
Source:

(readonly) rssi

Properties:
Name Type Description
rssi number Signal strength of the hub
Overrides:
Source:

(readonly) uuid

Properties:
Name Type Description
uuid string UUID of the hub
Overrides:
Source:

(readonly) voltage

Properties:
Name Type Description
voltage number Voltage of the hub (Volts)
Inherited From:
Source:

Methods

connect() → {Promise}

Connect to the Hub.
Overrides:
Source:
Returns:
Resolved upon successful connect.
Type
Promise

disconnect() → {Promise}

Disconnect the Hub.
Overrides:
Source:
Returns:
Resolved upon successful disconnect.
Type
Promise

getHubType() → {HubType}

Get the hub type.
Overrides:
Source:
Returns:
Type
HubType

getPortDeviceType(port) → {DeviceType}

Get the device type for a given port.
Parameters:
Name Type Description
port string
Overrides:
Source:
Returns:
Type
DeviceType

hardStopMotor(port) → {Promise}

Fully (hard) stop the motor on a given port.
Parameters:
Name Type Description
port string
Source:
Returns:
Resolved upon successful completion of command.
Type
Promise

playSound(sound) → {Promise}

Play a built-in train sound.
Parameters:
Name Type Description
sound DuploTrainBaseSound
Source:
Returns:
Resolved upon successful issuance of command.
Type
Promise

rampMotorSpeed(port, fromSpeed, toSpeed, time) → {Promise}

Ramp the motor speed on a given port.
Parameters:
Name Type Description
port string
fromSpeed number For forward, a value between 1 - 100 should be set. For reverse, a value between -1 to -100. Stop is 0.
toSpeed 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 the ramp should last (in milliseconds).
Source:
Returns:
Resolved upon successful completion of command.
Type
Promise

setLEDColor(color) → {Promise}

Set the color of the LED on the train via a color value.
Parameters:
Name Type Description
color Color
Overrides:
Source:
Returns:
Resolved upon successful issuance of command.
Type
Promise

setLEDRGB(red, green, blue) → {Promise}

Set the color of the LED on the Hub via RGB values.
Parameters:
Name Type Description
red number
green number
blue number
Inherited From:
Source:
Returns:
Resolved upon successful issuance of command.
Type
Promise

setMotorSpeed(port, speed, timeopt) → {Promise}

Set the motor speed on a given port.
Parameters:
Name Type Attributes Description
port string
speed number | Array.<number> For forward, a value between 1 - 100 should be set. For reverse, a value between -1 to -100. Stop is 0. If you are specifying port AB to control both motors, you can optionally supply a tuple of speeds.
time number <optional>
How long to activate the motor for (in milliseconds). Leave empty to turn the motor on indefinitely.
Source:
Returns:
Resolved upon successful completion of command. If time is specified, this is once the motor is finished.
Type
Promise

setName(name) → {Promise}

Set the name of the Hub.
Parameters:
Name Type Description
name string New name of the hub (14 characters or less, ASCII only).
Inherited From:
Source:
Returns:
Resolved upon successful issuance of command.
Type
Promise

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.
Parameters:
Name Type Description
delay number How long to sleep (in milliseconds).
Overrides:
Source:
Returns:
Resolved after the delay is finished.
Type
Promise

subscribe(port, modeopt) → {Promise}

Subscribe to sensor notifications on a given port.
Parameters:
Name Type Attributes Description
port string
mode number <optional>
The sensor mode to activate. If no mode is provided, the default for that sensor will be chosen.
Overrides:
Source:
Returns:
Resolved upon successful issuance of command.
Type
Promise

unsubscribe(port) → {Promise}

Unsubscribe to sensor notifications on a given port.
Parameters:
Name Type Description
port string
Overrides:
Source:
Returns:
Resolved upon successful issuance of command.
Type
Promise

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.
Parameters:
Name Type Description
commands Array.<Promise.<any>> Array of executing commands.
Overrides:
Source:
Returns:
Resolved after the commands are finished.
Type
Promise

Events

color

Emits when a color sensor is activated.
Parameters:
Name Type Description
port string
color Color
Inherited From:
Source:

speed

Emits on a speed change.
Parameters:
Name Type Description
port string
speed number
Inherited From:
Source: