Node.js lib for Wimoto devices utilizing noble and noble-device
- See noble prerequisites for your platform
- See Wimoto developer guide
npm install wimoto
Wimoto motes have two methods to communicate, broadcasting and connecting.
var Wimoto = require('wimoto');
var WimotoBroadcast = Wimoto.Broadcast;
WimotoBroadcast.startScanning();
WimotoBroadcast.on('data', callback(mote));
temperature
- Measured in celciuslight
- Measured in lux between 0-65535humidity
- as a percent between 0-100battery
- as a percent between 0-100
var Wimoto = require('wimoto');
var WimotoClimate = Wimoto.Climate;
wimotoClimate.discover(callback(wimotoClimate));
wimotoClimate.connectAndSetUp(callback());
wimotoClimate.readDeviceName(callback(error, deviceName));
wimotoClimate.readManufacturerName(callback(error, manufacturerName));
wimotoClimate.readModelNumber(callback(error, modelNumber));
wimotoClimate.readSystemId(callback(error, systemId));
wimotoClimate.readBatteryLevel(callback(error, batteryLevel));
wimotoClimate.readCurrentTemperature(callback(error, currentTemperature));
wimotoClimate.notifyCurrentTemperature([callback(error)]);
wimotoClimate.unnotifyCurrentTemperature([callback(error)]);
wimotoClimate.readCurrentLight(callback(error, currentLight));
wimotoClimate.notifyCurrentLight([callback(error)]);
wimotoClimate.unnotifyCurrentLight([callback(error)]);
wimotoClimate.readCurrentHumidity(callback(error, currentHumidity));
wimotoClimate.notifyCurrentHumidity([callback(error)]);
wimotoClimate.unnotifyCurrentHumidity([callback(error)]);
wimotoClimate.disconnect([callback(error)]);
wimotoClimate.on('disconnect', callback();
wimotoClimate.on('currentTemperatureChange', callback(currentTemperature);
wimotoClimate.on('currentLightChange', callback(currentLight);
wimotoClimate.on('currentHumidityChange', callback(currentHumidity);