bluetooth-bulb

A node.js library for the BluetoothBulb

node-bluetooth-bulb

A node.js library for the blue bulb Bluetooth Bulb

Special thanks to @mrose17 for sending me a bulb!

Notes:

  • the module is very unstable, the Bluetooth Bulb has very picky timing
  • currently only works on Linux, due to timing issues with CoreBluetooth on OS X (bulb disconnects during characteristic discover)
npm install bluetooth-bulb
var BlueoothBulb = require('bluetooth-bulb');

Discover

BlueoothBulb.discover(callback(bluetoothBulb));

Connect

bluetoothBulb.connect(callback);

Disconnect

bluetoothBulb.disconnect(callback);

Pair

// If pair code has not been set previously, it must be set within 10s of powering the bulb.
// Otherwise, pair must be called, immediately after connect (otherwise the bulb will terminate the connection)

bluetoothBulb.pair(code, callback); // code must be 0 - 255

Get Lights

// value range is: 0 - 125

bluetoothBulb.getGreen(callback(value));

bluetoothBulb.getRed(callback(value));

bluetoothBulb.getWhite(callback(value));

bluetoothBulb.getBlue(callback(value));

Set Lights

// value range is: 0 - 125

bluetoothBulb.setGreen(value, callback);

bluetoothBulb.setRed(value, callback);

bluetoothBulb.setWhite(value, callback);

bluetoothBulb.setBlue(value, callback);

Get Name

bbluetoothBulb.getName(callback(name));

Has Paired

// is the bulb paired with any devices (pair codes stored)

bluetoothBulb.hasPaired(callback(hasPaired));

Keep Alive

// no-op, keeps connection alive

bluetoothBulb.keepAlive(callback);

Is Paired

// is the bulb pair now (current connection)

bluetoothBulb.isPaired(callback(isPaired));

Unpair

// remove the current pair code from the bulb (will need to set a new pair code after operation)

bluetoothBulb.unpair(callback);