npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

com.lisaseacat.metawear

v0.0.2

Published

An Apache Cordova plugin to interact with a metaware board on your hybrid app

Downloads

4

Readme

#Metawear plugin for Apache Cordova

Use this plugin to connect your hybrid mobile application to a metawear device.

##Dependencies

http://plugins.cordova.io/#/package/com.megster.cordova.ble This plugin relies on the Bluetooth Low Energy Central plugin for Apache Cordova.

#Supported Platforms

  • iOS
  • Android

This Cordova plugin relies on the Bluetooth Low Energy Central Plugin. That plugin currently only supports iOS and Android.

#Installing Install with Cordova CLI

$ cd /path/to/your/project $ cordova plugin add com.lisaseacat.metawear

API

Global Variables

color

When playing a color on the metawear there are three choices for colors, red, green, and blue. You will need to pass one of these color variables into the setLED method to indicate your color choice.

COLOR.RED - red
COLOR.GREEN - green
COLOR.BLUE - blue

Methods

init

Intialize the metawear device.

metawear.init(success, failure);

Description

Function 'init' initializes the metawear device. This method attempts to connect to a metawear device over bluetooth low energy. The success callback is called when a metawear device is found and connected to.

Parameters

  • success: Success callback function that is invoked when a metawear device is found and connected to.
  • failure: Error callback function, invoked when error occurs. [optional]

listenForButton

Call if you'd like to listen for button press events on the metawear device.

metawear.listenForButton(failure, messageReceived, messageError);

Description

Function 'listenForButton' adds an event listener to the metawear device button press. When a message is received the messageReceived handler is called.

Parameters

  • failure: Error callback function that is invoked when failing to register the button listener.
  • messageReceived: Success callback function, invoked when the metawear button is pressed. [optional]
  • messageError: Error callback function, invoked when the metawear button is pressed but there was an error retrieving the message. [optional]

setLED

Call to light up the LED on the metawear.

metawear.setLED(metawear.COLOR.BLUE); 

Description

Function 'setLED' allows you to tell the metawear led to light up with a specific color.

Parameters

  • color: The color to light the LED as. Supported colors for the metawear are COLOR.RED, COLOR.GREEN, and COLOR.BLUE. If no color is specified the color will be green [optional]

play

Plays the saved color channel on the metawear

metawear.play(autoplay); 

Description

Function 'play' tells the metawear to being playing the saved LED color pattern.

Parameters

  • autoplay: boolean value to indicate whether the color pattern should automatically play or not.

pause

Pauses the LED on the metawear

metawear.pause(); 

Description

Function 'pause' causes the metawear to stop playing the LED color pattern.

stop

Stops the saved color channel on the metawear

metawear.stop(clearPattern); 

Description

Function 'stop' tells the metawear to stop playing the saved LED color pattern.

Parameters

  • clearPattern: boolean value to indicate whether the color pattern should be cleared out. If you were to call the play method after calling the stop method with the clearPattern flag set to true, nothing will play because the pattern has been removed. Instead you'll have to first add a color to the pattern with the 'setLED' function.

motor

Tells the optional motor sensor to pulse

metawear.motor(pulseLength); 

Description

Function 'motor' tells the optional metawear motor to pulse.

Parameters

  • pulseLength: value indicates how long you'd like the motor to pulse.

buzzer

Tells the optional buzzer sensor to pulse

metawear.buzzer(pulseLength); 

Description

Function 'buzzer' tells the optional metawear buzzer to pulse.

Parameters

  • pulseLength: value indicates how long you'd like the motor to pulse.

startAccelerometer

Tells the metawear to start sharing information about the accelerometer

metawear.startAccelerometer(); 

Description

Function 'startAccelerometer' tells the metawear to start sharing information about the accelerometer. We can use the information returned to see how the values have changed.

Quick Example of Processing the Accelerometer Information

onDataReceived : function(buffer) { // data received from MetaWear
    console.log('data received plugin handler');
    var data = new Uint8Array(buffer);
    if (data[0] === 3 && data[1] === 4) { // module = 3, opscode = 4
        //console.log('accelerometer data is: ' + JSON.stringify(data));
        //FYI guessing as the xyz values
        var d2 = data[2]; //x
        var d3 = data[3];
        var d4 = data[4]; //y
        var d5 = data[5];
        var d6 = data[6]; //z
        var d7 = data[7];
        message = "Got accelerometer information: [2]" 
            + d2 + ",[3]" + d3
        + ",[4]" + d4
        + ",[5]" + d5
        + ",[6]" + d6
        + ",[7]" + d7;
        //console.log("ACCELEROMETER MESSAGE: " + message);
        
        //compare against old values
        var xdiff = Math.abs(metawear.accelerometerVALS.x - d2);
        if (xdiff > 30 && metawear.accelerometerVALS.x !== 22){
            console.log("x value changes more than 30 degrees: " + xdiff);
            console.log("ACCELEROMETER MESSAGE: " + message);
            metawear.setLED(metawear.COLOR.RED);   
        }
        
        var ydiff = Math.abs(metawear.accelerometerVALS.y - d4);
        if (ydiff > 30 && metawear.accelerometerVALS.x !== 22){
            console.log("y value changes more than 30 degrees: " + ydiff);
            console.log("ACCELEROMETER MESSAGE: " + message);
            metawear.setLED(metawear.COLOR.GREEN);   
        }
        
        //reset accelerometer values
        metawear.accelerometerVALS.x = d2;
        metawear.accelerometerVALS.y = d4;
        metawear.accelerometerVALS.z = d6;
        
        //all the rest of the values are the same
    }

stopAccelerometer

Tells the metawear to stop sharing information about the accelerometer

metawear.stopAccelerometer(); 

Description

Function 'startAccelerometer' tells the metawear to start sharing information about the accelerometer. We can use the information returned to see how the values have changed.

disconnect

Disconnects the metawear device from bluetooth.

metawear.disconnect(success, failure);

Description

Function 'disconnect' disconnects the metawear device. This method attempts to disconnect the attached metawear device over bluetooth low energy. The success callback is called when a metawear device is successfully disconnected.

Parameters

  • success: Success callback function that is invoked when a metawear device is disconnected.
  • failure: Error callback function, invoked when error occurs. [optional]

Sample application

To download a sample application to see these methods in action, visit: https://github.com/ldeluca/metawear

Feedback

If you have any questions or find a problem with the code, please file an issue or create a pull request against the github repository.