Coder Social home page Coder Social logo

node-wimoto's Introduction

node-wimoto

Node.js lib for Wimoto devices utilizing noble and noble-device

Prerequisites

Install

npm install wimoto

Usage

Wimoto motes have two methods to communicate, broadcasting and connecting.

Broadcast Mode

var Wimoto = require('wimoto');
var WimotoBroadcast = Wimoto.Broadcast;

Start scanning

WimotoBroadcast.startScanning();

Events

WimotoBroadcast.on('data', callback(mote));
mote
  • temperature - Measured in celcius
  • light - Measured in lux between 0-65535
  • humidity - as a percent between 0-100
  • battery - as a percent between 0-100

Connection Mode

var Wimoto = require('wimoto');
var WimotoClimate = Wimoto.Climate;

Discover

wimotoClimate.discover(callback(wimotoClimate));

Connect and SetUp (discover services and characteristics)

wimotoClimate.connectAndSetUp(callback());

Read Device Name

wimotoClimate.readDeviceName(callback(error, deviceName));

Read Manufacturer Name

wimotoClimate.readManufacturerName(callback(error, manufacturerName));

Read Model Number

wimotoClimate.readModelNumber(callback(error, modelNumber));

Read System Id

wimotoClimate.readSystemId(callback(error, systemId));

Read Battery Level

wimotoClimate.readBatteryLevel(callback(error, batteryLevel));

Read Current Temperature

wimotoClimate.readCurrentTemperature(callback(error, currentTemperature));

Notify Current Temperature

wimotoClimate.notifyCurrentTemperature([callback(error)]);

UnNotify Current Temperature

wimotoClimate.unnotifyCurrentTemperature([callback(error)]);

Read Current Light

wimotoClimate.readCurrentLight(callback(error, currentLight));

Notify Current Light

wimotoClimate.notifyCurrentLight([callback(error)]);

UnNotify Current Light

wimotoClimate.unnotifyCurrentLight([callback(error)]);

Read Current Humidity

wimotoClimate.readCurrentHumidity(callback(error, currentHumidity));

Notify Current Humidity

wimotoClimate.notifyCurrentHumidity([callback(error)]);

UnNotify Current Humidity

wimotoClimate.unnotifyCurrentHumidity([callback(error)]);

Disconnect

wimotoClimate.disconnect([callback(error)]);

Events

wimotoClimate.on('disconnect', callback();
wimotoClimate.on('currentTemperatureChange', callback(currentTemperature);
wimotoClimate.on('currentLightChange', callback(currentLight);
wimotoClimate.on('currentHumidityChange', callback(currentHumidity);

node-wimoto's People

Contributors

jacobrosenthal avatar sandeepmistry avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.