thethingbox-sensortag
Version:
node.js lib for the TI SensorTag
186 lines (95 loc) • 3.75 kB
Markdown
node-sensortag
==============
node.js lib for the TI SensorTag
Forked from https://github.com/sandeepmistry/node-sensortag.
Install
-------
npm install sensortag
Usage
-----
var SensorTag = require('sensortag');
__Discover__
SensorTag.discover(callback(sensorTag)[, uuid]);
Optional SensorTag ```uuid``` to scan for, obtained from previous discover ```sensorTag.uuid```.
The ```uuid``` per SensorTag may not be the same across machines.
__Connect__
sensorTag.connect(callback);
__Disconnect__
sensorTag.disconnect(callback);
__Discover Services and Characteristics__
sensorTag.discoverServicesAndCharacteristics(callback);
__Device Info__
sensorTag.readDeviceName(callback(deviceName));
sensorTag.readSystemId(callback(systemId));
sensorTag.readSerialNumber(callback(serialNumber));
sensorTag.readFirmwareRevision(callback(firmwareRevision));
sensorTag.readHardwareRevision(callback(hardwareRevision));
sensorTag.readSoftwareRevision(callback(softwareRevision));
sensorTag.readManufacturerName(callback(manufacturerName));
__IR Temperature Sensor__
Enable/disable:
sensorTag.enableIrTemperature(callback);
sensorTag.disableIrTemperature(callback);
Read:
sensorTag.readIrTemperature(callback(objectTemperature, ambientTemperature));
Notify/Unnotify:
sensorTag.notifyIrTemperature(callback);
sensorTag.unnotifyIrTemperature(callback);
sensorTag.on('irTemperatureChange', callback(objectTemperature, ambientTemperature));
__Accelerometer__
Enable/disable/configure:
sensorTag.enableAccelerometer(callback);
sensorTag.disableAccelerometer(callback);
sensorTag.setAccelerometerPeriod(period, callback); // period 1 - 2550 ms, default period is 2000 ms
Read:
sensorTag.readAccelerometer(callback(x, y, z));
Notify/Unnotify:
sensorTag.notifyAccelerometer(callback);
sensorTag.unnotifyAccelerometer(callback);
sensorTag.on('accelerometerChange', callback(x, y, z));
__Humidity Sensor__
Enable/disable:
sensorTag.enableHumidity(callback);
sensorTag.disableHumidity(callback);
Read:
sensorTag.readHumidity(callback(temperature, humidity));
Notify/Unnotify:
sensorTag.notifyHumidity(callback);
sensorTag.unnotifyHumidity(callback);
sensorTag.on('humidityChange', callback(temperature, humidity));
__Magnetometer__
Enable/disable:
sensorTag.enableMagnetometer(callback);
sensorTag.disableMagnetometer(callback);
sensorTag.setMagnetometerPeriod(period, callback); // period 1 - 2550 ms, default period is 2000 ms
Read:
sensorTag.readMagnetometer(callback(x, y, z));
Notify/Unnotify:
sensorTag.notifyMagnetometer(callback);
sensorTag.unnotifyMagnetometer(callback);
sensorTag.on('magnetometerChange', callback(x, y, z));
__Barometric Pressure Sensor__
Enable/disable:
sensorTag.enableBarometricPressure(callback);
sensorTag.disableBarometricPressure(callback);
Read:
sensorTag.readBarometricPressure(callback(pressure));
Notify/Unnotify:
sensorTag.notifyBarometricPressure(callback);
sensorTag.unnotifyBarometricPressure(callback);
sensorTag.on('barometricPressureChange', callback(pressure));
__Gyroscope__
Enable/disable:
sensorTag.enableGyroscope(callback);
sensorTag.disableGyroscope(callback);
Read:
sensorTag.readGyroscope(callback(x, y, z));
Notify/Unnotify:
sensorTag.notifyGyroscope(callback);
sensorTag.unnotifyGyroscope(callback);
sensorTag.on('gyroscopeChange', callback(x, y, z));
__Simple Key__
Notify/Unnotify:
sensorTag.notifySimpleKey(callback);
sensorTag.unnotifySimpleKey(callback);
sensorTag.on('simpleKeyChange', callback(left, right));