Giter VIP home page Giter VIP logo

node-flower-power's Introduction

node-flower-power

node.js lib for the Parrot Flower Power

Install

npm install flower-power

Usage

var FlowerPower = require('flower-power');

Discover

FlowerPower.discover(callback(flowerPower));

Connect

flowerPower.connect(callback);

Disconnect

flowerPower.disconnect(callback);

Discover Services and Characteristics

flowerPower.discoverServicesAndCharacteristics(callback);

Device Info

flowerPower.readSystemId(callback(systemId));

flowerPower.readSerialNumber(callback(serialNumber));

flowerPower.readFirmwareRevision(callback(firmwareRevision));

flowerPower.readHardwareRevision(callback(hardwareRevision));

Other Info

flowerPower.readFriendlyName(callback(friendlyName)); 

flowerPower.writeFriendlyName(friendlyName, callback);


flowerPower.readColor(callback(color));

Battery Level

// batteryLevel range is 0 - 100
flowerPower.readBatteryLevel(callback(batteryLevel));

Sunlight

// sunlight units are photons per square meter 
flowerPower.readSunlight(callback(sunlight));

Temperature

flowerPower.readTemperature(callback(temperatureC, temperatureF));

Soil Moisture

// soilMoisture units is percentage (%)
flowerPower.readSoilMoisture(callback(soilMoisture));

Live mode

// sunlightChange, temperatureChange, soilMoistureChange events are emitted (see below)

flowerPower.enableLiveMode(callback);

flowerPower.disableLiveMode(callback);

Events

Disconnect

flowerPower.on('disconnect', callback);

Sunlight Change

flowerPower.on('sunlightChange', callback(sunlight));

Temperature Change

flowerPower.on('temperatureChange', callback(temperatureC, temperatureF));

Soil Moisture Change

flowerPower.on('soilMoistureChange', callback(soilMoisture));

TODO

  • discover
  • connect
  • discover
  • discover services and characteristics
  • read device info
    • system id
    • serial number
    • firmware revision
    • hardware revision
  • read battery level
  • read sunlight
  • read temperature
  • read soil moisture
  • live mode
    • sunlight
    • temperature
    • soil moisture
  • read fertilizer
  • read historic data
    • sunlight
    • temperature
    • soil moisture
    • fertizler
  • use calculations to convert values (currently using lookup table)

node-flower-power's People

Contributors

sandeepmistry avatar mrose17 avatar

Watchers

Alasdair Allan avatar  avatar James Cloos avatar Carl Malamud avatar  avatar

Forkers

homethings

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.