Latest Threat Research:SANDWORM_MODE: Shai-Hulud-Style npm Worm Hijacks CI Workflows and Poisons AI Toolchains.Details
Socket
Book a DemoInstallSign in
Socket

johnny-five

Package Overview
Dependencies
Maintainers
1
Versions
300
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

johnny-five - npm Package Compare versions

Comparing version
2.0.0
to
2.1.0
+29
lib/mixins/emitter.js
const EventEmitter = require("events");
const wm = new WeakMap();
class Emitter extends EventEmitter {
pause() {
wm.set(this, {
...this._events
});
this._events = { __proto__: null };
}
resume() {
const events = wm.get(this);
if (events) {
this._events = {
__proto__: null,
...events
};
wm.set(this, null);
}
}
}
Object.assign(
Emitter.prototype,
EventEmitter.prototype
);
module.exports = Emitter;
const Emitter = require("./emitter");
class Withinable extends Emitter {
constructor() {
super();
}
within(range, unit, callback) {
let upper;
if (typeof range === "number") {
upper = range;
range = [0, upper];
}
if (!Array.isArray(range)) {
throw new Error("within expected a range array");
}
if (typeof unit === "function") {
callback = unit;
unit = "value";
}
if (typeof this[unit] === "undefined") {
return this;
}
this.on("data", () => {
const value = this[unit];
if (value >= range[0] && value <= range[1]) {
callback.call(this, null, value);
}
});
return this;
}
}
module.exports = Withinable;
{
// Change this to match your project
"include": ["lib/*.js", "lib/**/*.js"],
"compilerOptions": {
// Tells TypeScript to read JS files, as
// normally they are ignored as source files
"allowJs": true,
"checkJs": false,
// Generate d.ts files
"declaration": true,
// This compiler run should
// only output d.ts files
"emitDeclarationOnly": true,
// Types should go into this directory.
// Removing this would place the .d.ts files
// next to the .js files
"outDir": "types"
}
}
+1
-1
const Board = require("./board");
const Expander = require("./expander");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const { constrain, fma, int16, sum, toFixed, RAD_TO_DEG } = require("./fn");

@@ -5,0 +5,0 @@

const Board = require("./board");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const { toFixed } = require("./fn");

@@ -4,0 +4,0 @@ const priv = new Map();

@@ -1,2 +0,2 @@

const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const ease = require("./easing");

@@ -3,0 +3,0 @@ const { cloneDeep, constrain } = require("./fn");

const Board = require("./board");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const { toFixed } = require("./fn");

@@ -4,0 +4,0 @@

@@ -1,2 +0,2 @@

const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const chalk = require("chalk");

@@ -474,7 +474,2 @@ const Collection = require("./mixins/collection");

// Inherit event api
// util.inherits(Board, Emitter);
/**

@@ -481,0 +476,0 @@ * Pass through methods

const Board = require("./board");
const Collection = require("./mixins/collection");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const EVS = require("./evshield");

@@ -5,0 +5,0 @@ const Fn = require("./fn");

const Board = require("./board");
const EVS = require("./evshield");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const Fn = require("./fn");

@@ -5,0 +5,0 @@ const priv = new Map();

const Board = require("./board");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const {int16, RAD_TO_DEG, TAU} = require("./fn");

@@ -4,0 +4,0 @@ const priv = new Map();

@@ -1,2 +0,2 @@

const Emitter = require("events");
const Emitter = require("./mixins/emitter");
let shared;

@@ -3,0 +3,0 @@

const Board = require("./board");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const sleep = require("./sleep");

@@ -4,0 +4,0 @@ const Fn = require("./fn");

const Board = require("./board");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const Pin = require("./pin");

@@ -4,0 +4,0 @@ const {toFixed} = require("./fn");

const Board = require("./board");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const Fn = require("./fn");

@@ -4,0 +4,0 @@

const Board = require("./board");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const Fn = require("./fn");

@@ -4,0 +4,0 @@ const priv = new Map();

const Board = require("./board");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const { constrain, fscale } = require("./fn");

@@ -4,0 +4,0 @@ const priv = new Map();

const Board = require("./board");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const Fn = require("./fn");

@@ -4,0 +4,0 @@ const { scale, toFixed, uint16 } = Fn;

const Board = require("./board");
const EVS = require("./evshield");
const Withinable = require("./mixins/within");
const Withinable = require("./mixins/withinable");
const { uint16, toFixed, scale } = require("./fn");

@@ -5,0 +5,0 @@ const priv = new Map();

@@ -1,2 +0,3 @@

const Emitter = require("events");
const EventEmitter = require("events");
const Emitter = require("./emitter");

@@ -206,4 +207,2 @@ /**

// Emitter.call(this);
// If the Collection.Emitter was created

@@ -286,2 +285,3 @@ // with a Shared Properties object, then

Collection.Emitter.prototype,
EventEmitter.prototype,
Emitter.prototype

@@ -288,0 +288,0 @@ );

const Board = require("./board");
const Collection = require("./mixins/collection");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const priv = new Map();

@@ -5,0 +5,0 @@

const Board = require("./board");
const Collection = require("./mixins/collection");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const EVS = require("./evshield");

@@ -5,0 +5,0 @@ const Expander = require("./expander.js");

const Board = require("./board");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const priv = new Map();

@@ -4,0 +4,0 @@

const Board = require("./board");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const Collection = require("./mixins/collection");

@@ -4,0 +4,0 @@

@@ -5,3 +5,3 @@ const Board = require("./board");

const Fn = require("./fn");
const Withinable = require("./mixins/within");
const Withinable = require("./mixins/withinable");
const Pins = Board.Pins;

@@ -8,0 +8,0 @@

const Board = require("./board");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const Fn = require("./fn");

@@ -4,0 +4,0 @@ const Led = require("./led");

@@ -1,2 +0,2 @@

const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const repl = require("repl");

@@ -3,0 +3,0 @@ const priv = new Map();

const Board = require("./board");
const Fn = require("./fn");
const Collection = require("./mixins/collection");
const Fn = require("./fn");
const Withinable = require("./mixins/within");
const Withinable = require("./mixins/withinable");

@@ -6,0 +6,0 @@ // Sensor instance private data

const Board = require("./board");
const Pins = Board.Pins;
const Expander = require("./expander");
const Emitter = require("events");
const Collection = require("./mixins/collection");
const Emitter = require("./mixins/emitter");
const Fn = require("./fn");

@@ -7,0 +7,0 @@ const Animation = require("./animation");

const Board = require("./board");
const Collection = require("./mixins/collection");
const Emitter = require("events");
const Emitter = require("./mixins/emitter");
const Fn = require("./fn");

@@ -5,0 +5,0 @@

const Board = require("./board");
const Emitter = require("events");
const Withinable = require("./mixins/within");
const EventEmitter = require("events");
const Withinable = require("./mixins/withinable");
const {

@@ -286,3 +286,3 @@ toFixed,

if (!drivers[key]) {
driver = new Emitter();
driver = new EventEmitter();
Object.defineProperties(driver, Drivers[driverName]);

@@ -289,0 +289,0 @@ driver.initialize(board, options);

{
"name": "johnny-five",
"description": "The JavaScript Robotics and Hardware Programming Framework. Use with: Arduino (all models), Electric Imp, Beagle Bone, Intel Galileo & Edison, Linino One, Pinoccio, pcDuino3, Raspberry Pi, Particle/Spark Core & Photon, Tessel 2, TI Launchpad and more!",
"version": "2.0.0",
"version": "2.1.0",
"homepage": "https://johnny-five.io",

@@ -170,4 +170,4 @@ "author": "Rick Waldron <waldron.rick@gmail.com>",

"coveralls": "^3.0.2",
"grunt": "^1.0.4",
"grunt-cli": "^1.2.0",
"grunt": "^1.4.1",
"grunt-cli": "^1.4.3",
"grunt-contrib-jshint": "^2.1.0",

@@ -174,0 +174,0 @@ "grunt-contrib-nodeunit": "^2.0.0",

+335
-336

@@ -1,2 +0,2 @@

![](https://github.com/rwaldron/johnny-five/raw/master/assets/sgier-johnny-five.png)
![](https://github.com/rwaldron/johnny-five/raw/main/assets/sgier-johnny-five.png)

@@ -62,5 +62,5 @@ # Johnny-Five

[![Travis Build Status](https://travis-ci.org/rwaldron/johnny-five.svg?branch=master)](https://travis-ci.org/rwaldron/johnny-five)
[![Appveyor Build Status](https://ci.appveyor.com/api/projects/status/hmke71k7uemtnami/branch/master?svg=true)](https://ci.appveyor.com/project/rwaldron/johnny-five)
[![Coverage Status](https://coveralls.io/repos/github/rwaldron/johnny-five/badge.svg?branch=master)](https://coveralls.io/github/rwaldron/johnny-five?branch=master)
[![Travis Build Status](https://travis-ci.com/rwaldron/johnny-five.svg?branch=main)](https://travis-ci.com/rwaldron/johnny-five)
[![Appveyor Build Status](https://ci.appveyor.com/api/projects/status/hmke71k7uemtnami/branch/main?svg=true)](https://ci.appveyor.com/project/rwaldron/johnny-five)
[![Coverage Status](https://coveralls.io/repos/github/rwaldron/johnny-five/badge.svg?branch=main)](https://coveralls.io/github/rwaldron/johnny-five?branch=main)
[![Install Size](https://packagephobia.now.sh/badge?p=johnny-five)](https://packagephobia.now.sh/result?p=johnny-five)

@@ -71,7 +71,7 @@ [![Gitter](https://img.shields.io/gitter/room/nwjs/nw.js.svg)](https://gitter.im/rwaldron/johnny-five)

**Johnny-Five is an Open Source, Firmata Protocol based, IoT and Robotics programming framework, developed at [Bocoup](http://bocoup.com). Johnny-Five programs can be written for Arduino (all models), Electric Imp, Beagle Bone, Intel Galileo & Edison, Linino One, Pinoccio, pcDuino3, Raspberry Pi, Particle/Spark Core & Photon, Tessel 2, TI Launchpad and more!**
**Johnny-Five is an Open Source, Firmata Protocol based, IoT and Robotics programming framework, developed by the [Nodebots](https://twitter.com/nodebots) Community. Johnny-Five programs can be written for Arduino (all models), Electric Imp, Beagle Bone, Intel Galileo & Edison, Linino One, Pinoccio, pcDuino3, Raspberry Pi, Particle/Spark Core & Photon, Tessel 2, TI Launchpad and more!**
Johnny-Five has grown from a passion project into a tool for inspiring learning and creativity for people of all ages, backgrounds, and from all across the world.
Just interested in learning and building awesome things? You might want to start with the official [Johnny-Five website](http://johnny-five.io). The website combines content from this repo, the wiki, tutorials from the Bocoup blog and several third-party websites into a single, easily-discoverable source:
Just interested in learning and building awesome things? You might want to start with the official [Johnny-Five website](http://johnny-five.io).

@@ -114,3 +114,3 @@ * If you want to find the API documentation, [that’s right here](http://johnny-five.io/api/).

<img src="https://github.com/rwaldron/johnny-five/raw/master/assets/led-blink.gif">
<img src="https://github.com/rwaldron/johnny-five/raw/main/assets/led-blink.gif">

@@ -179,3 +179,3 @@ > Note: Node will crash if you try to run johnny-five in the node REPL, but board instances will create their own contextual REPL. Put your script in a file.

**There are presently 363 example programs with code and diagrams!**
**There are presently 362 example programs with code and diagrams!**

@@ -185,398 +185,397 @@ <!--extract-start:examples-->

### Board
- [Board - Basic Initialization](https://github.com/rwaldron/johnny-five/blob/master/docs/board.md)
- [Board - Cleanup in 'exit' event](https://github.com/rwaldron/johnny-five/blob/master/docs/board-cleanup.md)
- [Board - Multiple in one program](https://github.com/rwaldron/johnny-five/blob/master/docs/board-multi.md)
- [Board - Specify Sampling Interval](https://github.com/rwaldron/johnny-five/blob/master/docs/board-sampling-interval.md)
- [Board - Specify port](https://github.com/rwaldron/johnny-five/blob/master/docs/board-with-port.md)
- [Custom Data Properties](https://github.com/rwaldron/johnny-five/blob/master/docs/custom-properties.md)
- [Pin](https://github.com/rwaldron/johnny-five/blob/master/docs/pin.md)
- [REPL](https://github.com/rwaldron/johnny-five/blob/master/docs/repl.md)
- [Board - Basic Initialization](https://github.com/rwaldron/johnny-five/blob/main/docs/board.md)
- [Board - Cleanup in 'exit' event](https://github.com/rwaldron/johnny-five/blob/main/docs/board-cleanup.md)
- [Board - Multiple in one program](https://github.com/rwaldron/johnny-five/blob/main/docs/board-multi.md)
- [Board - Specify Sampling Interval](https://github.com/rwaldron/johnny-five/blob/main/docs/board-sampling-interval.md)
- [Board - Specify port](https://github.com/rwaldron/johnny-five/blob/main/docs/board-with-port.md)
- [Custom Data Properties](https://github.com/rwaldron/johnny-five/blob/main/docs/custom-properties.md)
- [Pin](https://github.com/rwaldron/johnny-five/blob/main/docs/pin.md)
- [REPL](https://github.com/rwaldron/johnny-five/blob/main/docs/repl.md)
### LED
- [LED](https://github.com/rwaldron/johnny-five/blob/master/docs/led.md)
- [LED - Blink](https://github.com/rwaldron/johnny-five/blob/master/docs/led-blink.md)
- [LED - Demo sequence](https://github.com/rwaldron/johnny-five/blob/master/docs/led-demo-sequence.md)
- [LED - Fade](https://github.com/rwaldron/johnny-five/blob/master/docs/led-fade.md)
- [LED - Fade callback](https://github.com/rwaldron/johnny-five/blob/master/docs/led-fade-callback.md)
- [LED - Fade with animation](https://github.com/rwaldron/johnny-five/blob/master/docs/led-fade-animation.md)
- [LED - PCA9685](https://github.com/rwaldron/johnny-five/blob/master/docs/led-PCA9685.md)
- [LED - Pulse](https://github.com/rwaldron/johnny-five/blob/master/docs/led-pulse.md)
- [LED - Pulse with animation](https://github.com/rwaldron/johnny-five/blob/master/docs/led-pulse-animation.md)
- [LED - Slider](https://github.com/rwaldron/johnny-five/blob/master/docs/led-slider.md)
- [LED - Tessel Servo Module](https://github.com/rwaldron/johnny-five/blob/master/docs/led-tessel-servo-module.md)
- [LEDs - An array of LEDs](https://github.com/rwaldron/johnny-five/blob/master/docs/led-array.md)
- [LEDs - Controlling an array of LEDs](https://github.com/rwaldron/johnny-five/blob/master/docs/led-array-controller.md)
- [LED](https://github.com/rwaldron/johnny-five/blob/main/docs/led.md)
- [LED - Blink](https://github.com/rwaldron/johnny-five/blob/main/docs/led-blink.md)
- [LED - Demo sequence](https://github.com/rwaldron/johnny-five/blob/main/docs/led-demo-sequence.md)
- [LED - Fade](https://github.com/rwaldron/johnny-five/blob/main/docs/led-fade.md)
- [LED - Fade callback](https://github.com/rwaldron/johnny-five/blob/main/docs/led-fade-callback.md)
- [LED - Fade with animation](https://github.com/rwaldron/johnny-five/blob/main/docs/led-fade-animation.md)
- [LED - PCA9685](https://github.com/rwaldron/johnny-five/blob/main/docs/led-PCA9685.md)
- [LED - Pulse](https://github.com/rwaldron/johnny-five/blob/main/docs/led-pulse.md)
- [LED - Pulse with animation](https://github.com/rwaldron/johnny-five/blob/main/docs/led-pulse-animation.md)
- [LED - Slider](https://github.com/rwaldron/johnny-five/blob/main/docs/led-slider.md)
- [LED - Tessel Servo Module](https://github.com/rwaldron/johnny-five/blob/main/docs/led-tessel-servo-module.md)
- [LEDs - An array of LEDs](https://github.com/rwaldron/johnny-five/blob/main/docs/led-array.md)
- [LEDs - Controlling an array of LEDs](https://github.com/rwaldron/johnny-five/blob/main/docs/led-array-controller.md)
### LED: RGB
- [LED - RGB (Common Anode)](https://github.com/rwaldron/johnny-five/blob/master/docs/led-rgb-anode.md)
- [LED - RGB (Common Anode) PCA9685](https://github.com/rwaldron/johnny-five/blob/master/docs/led-rgb-anode-PCA9685.md)
- [LED - RGB Intensity](https://github.com/rwaldron/johnny-five/blob/master/docs/led-rgb-intensity.md)
- [LED - Rainbow](https://github.com/rwaldron/johnny-five/blob/master/docs/led-rainbow.md)
- [LED - Rainbow BlinkM](https://github.com/rwaldron/johnny-five/blob/master/docs/led-rgb-BLINKM.md)
- [LED - RGB (Common Anode)](https://github.com/rwaldron/johnny-five/blob/main/docs/led-rgb-anode.md)
- [LED - RGB (Common Anode) PCA9685](https://github.com/rwaldron/johnny-five/blob/main/docs/led-rgb-anode-PCA9685.md)
- [LED - RGB Intensity](https://github.com/rwaldron/johnny-five/blob/main/docs/led-rgb-intensity.md)
- [LED - Rainbow](https://github.com/rwaldron/johnny-five/blob/main/docs/led-rainbow.md)
- [LED - Rainbow BlinkM](https://github.com/rwaldron/johnny-five/blob/main/docs/led-rgb-BLINKM.md)
### LED: Digits & Matrix
- [LED - Digital Clock](https://github.com/rwaldron/johnny-five/blob/master/docs/led-digits-clock.md)
- [LED - Digital Clock, Dual Displays](https://github.com/rwaldron/johnny-five/blob/master/docs/led-digits-clock-dual.md)
- [LED - Digital Clock, HT16K33](https://github.com/rwaldron/johnny-five/blob/master/docs/led-digits-clock-HT16K33.md)
- [LED - Draw Matrix Characters Demo](https://github.com/rwaldron/johnny-five/blob/master/docs/led-chars-demo.md)
- [LED - Enumerate Matrix Characters & Symbols](https://github.com/rwaldron/johnny-five/blob/master/docs/led-enumeratechars.md)
- [LED - Matrix](https://github.com/rwaldron/johnny-five/blob/master/docs/led-matrix.md)
- [LED - Matrix Demo](https://github.com/rwaldron/johnny-five/blob/master/docs/led-matrix-tutorial.md)
- [LED - Matrix HT16K33](https://github.com/rwaldron/johnny-five/blob/master/docs/led-matrix-HT16K33.md)
- [LED - Matrix HT16K33 16x8](https://github.com/rwaldron/johnny-five/blob/master/docs/led-matrix-HT16K33-16x8.md)
- [LED - Digital Clock](https://github.com/rwaldron/johnny-five/blob/main/docs/led-digits-clock.md)
- [LED - Digital Clock, Dual Displays](https://github.com/rwaldron/johnny-five/blob/main/docs/led-digits-clock-dual.md)
- [LED - Digital Clock, HT16K33](https://github.com/rwaldron/johnny-five/blob/main/docs/led-digits-clock-HT16K33.md)
- [LED - Draw Matrix Characters Demo](https://github.com/rwaldron/johnny-five/blob/main/docs/led-chars-demo.md)
- [LED - Enumerate Matrix Characters & Symbols](https://github.com/rwaldron/johnny-five/blob/main/docs/led-enumeratechars.md)
- [LED - Matrix](https://github.com/rwaldron/johnny-five/blob/main/docs/led-matrix.md)
- [LED - Matrix Demo](https://github.com/rwaldron/johnny-five/blob/main/docs/led-matrix-tutorial.md)
- [LED - Matrix HT16K33](https://github.com/rwaldron/johnny-five/blob/main/docs/led-matrix-HT16K33.md)
- [LED - Matrix HT16K33 16x8](https://github.com/rwaldron/johnny-five/blob/main/docs/led-matrix-HT16K33-16x8.md)
### Servo
- [Servo](https://github.com/rwaldron/johnny-five/blob/master/docs/servo.md)
- [Servo - Continuous](https://github.com/rwaldron/johnny-five/blob/master/docs/servo-continuous.md)
- [Servo - Drive](https://github.com/rwaldron/johnny-five/blob/master/docs/servo-drive.md)
- [Servo - Multi-Turn](https://github.com/rwaldron/johnny-five/blob/master/docs/servo-multi-turn.md)
- [Servo - PCA9685](https://github.com/rwaldron/johnny-five/blob/master/docs/servo-PCA9685.md)
- [Servo - Prompt](https://github.com/rwaldron/johnny-five/blob/master/docs/servo-prompt.md)
- [Servo - Slider control](https://github.com/rwaldron/johnny-five/blob/master/docs/servo-slider.md)
- [Servo - Tessel Servo Module](https://github.com/rwaldron/johnny-five/blob/master/docs/servo-tessel-servo-module.md)
- [Servos - An array of servos](https://github.com/rwaldron/johnny-five/blob/master/docs/servo-array.md)
- [Servo](https://github.com/rwaldron/johnny-five/blob/main/docs/servo.md)
- [Servo - Continuous](https://github.com/rwaldron/johnny-five/blob/main/docs/servo-continuous.md)
- [Servo - Drive](https://github.com/rwaldron/johnny-five/blob/main/docs/servo-drive.md)
- [Servo - Multi-Turn](https://github.com/rwaldron/johnny-five/blob/main/docs/servo-multi-turn.md)
- [Servo - PCA9685](https://github.com/rwaldron/johnny-five/blob/main/docs/servo-PCA9685.md)
- [Servo - Prompt](https://github.com/rwaldron/johnny-five/blob/main/docs/servo-prompt.md)
- [Servo - Slider control](https://github.com/rwaldron/johnny-five/blob/main/docs/servo-slider.md)
- [Servo - Tessel Servo Module](https://github.com/rwaldron/johnny-five/blob/main/docs/servo-tessel-servo-module.md)
- [Servos - An array of servos](https://github.com/rwaldron/johnny-five/blob/main/docs/servo-array.md)
### GPS
- [GPS - Adafruit Ultimate GPS Breakout](https://github.com/rwaldron/johnny-five/blob/master/docs/gps-adafruit.md)
- [GPS - Default GPS](https://github.com/rwaldron/johnny-five/blob/master/docs/gps.md)
- [GPS - Hardware Serial](https://github.com/rwaldron/johnny-five/blob/master/docs/gps-hardware-serial.md)
- [GPS - Sparkfun GP-20U7](https://github.com/rwaldron/johnny-five/blob/master/docs/gps-GP-20U7.md)
- [GPS - Adafruit Ultimate GPS Breakout](https://github.com/rwaldron/johnny-five/blob/main/docs/gps-adafruit.md)
- [GPS - Default GPS](https://github.com/rwaldron/johnny-five/blob/main/docs/gps.md)
- [GPS - Hardware Serial](https://github.com/rwaldron/johnny-five/blob/main/docs/gps-hardware-serial.md)
- [GPS - Sparkfun GP-20U7](https://github.com/rwaldron/johnny-five/blob/main/docs/gps-GP-20U7.md)
### Servo Animation
- [Servo - Animation](https://github.com/rwaldron/johnny-five/blob/master/docs/servo-animation.md)
- [Servo - Leg Animation](https://github.com/rwaldron/johnny-five/blob/master/docs/servo-animation-leg.md)
- [Servo - Animation](https://github.com/rwaldron/johnny-five/blob/main/docs/servo-animation.md)
- [Servo - Leg Animation](https://github.com/rwaldron/johnny-five/blob/main/docs/servo-animation-leg.md)
### Color
- [Color - EVShield EV3 (Code)](https://github.com/rwaldron/johnny-five/blob/master/docs/color-EVS_EV3.md)
- [Color - EVShield EV3 (Raw)](https://github.com/rwaldron/johnny-five/blob/master/docs/color-raw-EVS_EV3.md)
- [Color - EVShield NXT (Code)](https://github.com/rwaldron/johnny-five/blob/master/docs/color-EVS_NXT.md)
- [Color - ISL29125](https://github.com/rwaldron/johnny-five/blob/master/docs/color-ISL29125.md)
- [Color - EVShield EV3 (Code)](https://github.com/rwaldron/johnny-five/blob/main/docs/color-EVS_EV3.md)
- [Color - EVShield EV3 (Raw)](https://github.com/rwaldron/johnny-five/blob/main/docs/color-raw-EVS_EV3.md)
- [Color - EVShield NXT (Code)](https://github.com/rwaldron/johnny-five/blob/main/docs/color-EVS_NXT.md)
- [Color - ISL29125](https://github.com/rwaldron/johnny-five/blob/main/docs/color-ISL29125.md)
### Motor
- [Motor](https://github.com/rwaldron/johnny-five/blob/master/docs/motor.md)
- [Motor - 3 pin](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-3-pin.md)
- [Motor - Adafruit DRV8871 DC Motor Driver Breakout](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-drv8871.md)
- [Motor - Brake](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-brake.md)
- [Motor - Current](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-current.md)
- [Motor - Directional](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-directional.md)
- [Motor - EVShield EV3](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-EVS_EV3.md)
- [Motor - EVShield NXT](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-EVS_NXT.md)
- [Motor - Enable Pin](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-enable.md)
- [Motor - GROVE_I2C_MOTOR_DRIVER](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-GROVE_I2C.md)
- [Motor - H-Bridge](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-hbridge.md)
- [Motor - LUDUS](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-LUDUS.md)
- [Motor - PCA9685](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-PCA9685.md)
- [Motor - Pololu VNH5019 Dual Motor Driver Breakout](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-vnh5019.md)
- [Motor - Sparkfun Dual H-bridge Edison Block](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-sparkfun-edison-hbridge.md)
- [Motor - Sparkfun TB6612FNG](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-TB6612FNG.md)
- [Motor - l298 Breakout](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-l298-breakout.md)
- [Motors - Dual H-Bridge](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-hbridge-dual.md)
- [Motor](https://github.com/rwaldron/johnny-five/blob/main/docs/motor.md)
- [Motor - 3 pin](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-3-pin.md)
- [Motor - Adafruit DRV8871 DC Motor Driver Breakout](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-drv8871.md)
- [Motor - Brake](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-brake.md)
- [Motor - Current](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-current.md)
- [Motor - Directional](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-directional.md)
- [Motor - EVShield EV3](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-EVS_EV3.md)
- [Motor - EVShield NXT](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-EVS_NXT.md)
- [Motor - Enable Pin](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-enable.md)
- [Motor - GROVE_I2C_MOTOR_DRIVER](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-GROVE_I2C.md)
- [Motor - H-Bridge](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-hbridge.md)
- [Motor - LUDUS](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-LUDUS.md)
- [Motor - PCA9685](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-PCA9685.md)
- [Motor - Pololu VNH5019 Dual Motor Driver Breakout](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-vnh5019.md)
- [Motor - Sparkfun Dual H-bridge Edison Block](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-sparkfun-edison-hbridge.md)
- [Motor - Sparkfun TB6612FNG](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-TB6612FNG.md)
- [Motor - l298 Breakout](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-l298-breakout.md)
- [Motors - Dual H-Bridge](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-hbridge-dual.md)
### Stepper Motor
- [Stepper - Driver](https://github.com/rwaldron/johnny-five/blob/master/docs/stepper-driver.md)
- [Stepper - Four Wire](https://github.com/rwaldron/johnny-five/blob/master/docs/stepper-four_wire.md)
- [Stepper - Sweep](https://github.com/rwaldron/johnny-five/blob/master/docs/stepper-sweep.md)
- [Stepper - Driver](https://github.com/rwaldron/johnny-five/blob/main/docs/stepper-driver.md)
- [Stepper - Four Wire](https://github.com/rwaldron/johnny-five/blob/main/docs/stepper-four_wire.md)
- [Stepper - Sweep](https://github.com/rwaldron/johnny-five/blob/main/docs/stepper-sweep.md)
### ESC & Brushless Motor
- [ESC - Bidirectional](https://github.com/rwaldron/johnny-five/blob/master/docs/esc-bidirectional.md)
- [ESC - Keypress controlled ESCs](https://github.com/rwaldron/johnny-five/blob/master/docs/esc-keypress.md)
- [ESC - PCA9685](https://github.com/rwaldron/johnny-five/blob/master/docs/esc-PCA9685.md)
- [ESC - Bidirectional](https://github.com/rwaldron/johnny-five/blob/main/docs/esc-bidirectional.md)
- [ESC - Keypress controlled ESCs](https://github.com/rwaldron/johnny-five/blob/main/docs/esc-keypress.md)
- [ESC - PCA9685](https://github.com/rwaldron/johnny-five/blob/main/docs/esc-PCA9685.md)
### Button / Switch
- [Button](https://github.com/rwaldron/johnny-five/blob/master/docs/button.md)
- [Button - Bumper](https://github.com/rwaldron/johnny-five/blob/master/docs/button-bumper.md)
- [Button - EVShield EV3](https://github.com/rwaldron/johnny-five/blob/master/docs/button-EVS_EV3.md)
- [Button - EVShield NXT](https://github.com/rwaldron/johnny-five/blob/master/docs/button-EVS_NXT.md)
- [Button - Options](https://github.com/rwaldron/johnny-five/blob/master/docs/button-options.md)
- [Button - Pullup](https://github.com/rwaldron/johnny-five/blob/master/docs/button-pullup.md)
- [Buttons - Collection w/ AT42QT1070](https://github.com/rwaldron/johnny-five/blob/master/docs/button-collection-AT42QT1070.md)
- [Switch](https://github.com/rwaldron/johnny-five/blob/master/docs/switch.md)
- [Switch - Magnetic Door](https://github.com/rwaldron/johnny-five/blob/master/docs/switch-magnetic-door.md)
- [Switch - Tilt SW-200D](https://github.com/rwaldron/johnny-five/blob/master/docs/switch-tilt-SW_200D.md)
- [Toggle Switch](https://github.com/rwaldron/johnny-five/blob/master/docs/toggle-switch.md)
- [Button](https://github.com/rwaldron/johnny-five/blob/main/docs/button.md)
- [Button - Bumper](https://github.com/rwaldron/johnny-five/blob/main/docs/button-bumper.md)
- [Button - EVShield EV3](https://github.com/rwaldron/johnny-five/blob/main/docs/button-EVS_EV3.md)
- [Button - EVShield NXT](https://github.com/rwaldron/johnny-five/blob/main/docs/button-EVS_NXT.md)
- [Button - Options](https://github.com/rwaldron/johnny-five/blob/main/docs/button-options.md)
- [Button - Pullup](https://github.com/rwaldron/johnny-five/blob/main/docs/button-pullup.md)
- [Buttons - Collection w/ AT42QT1070](https://github.com/rwaldron/johnny-five/blob/main/docs/button-collection-AT42QT1070.md)
- [Switch](https://github.com/rwaldron/johnny-five/blob/main/docs/switch.md)
- [Switch - Magnetic Door](https://github.com/rwaldron/johnny-five/blob/main/docs/switch-magnetic-door.md)
- [Switch - Tilt SW-200D](https://github.com/rwaldron/johnny-five/blob/main/docs/switch-tilt-SW_200D.md)
- [Toggle Switch](https://github.com/rwaldron/johnny-five/blob/main/docs/toggle-switch.md)
### Keypad
- [Keypad - 3x4 I2C Nano Backpack](https://github.com/rwaldron/johnny-five/blob/master/docs/keypad-3X4_I2C_NANO_BACKPACK.md)
- [Keypad - 4x4 I2C Nano Backpack](https://github.com/rwaldron/johnny-five/blob/master/docs/keypad-4X4_I2C_NANO_BACKPACK.md)
- [Keypad - VKEY](https://github.com/rwaldron/johnny-five/blob/master/docs/keypad-analog-vkey.md)
- [Keypad - Waveshare AD](https://github.com/rwaldron/johnny-five/blob/master/docs/keypad-analog-ad.md)
- [Touchpad - Grove QTouch](https://github.com/rwaldron/johnny-five/blob/master/docs/keypad-QTOUCH.md)
- [Touchpad - MPR121](https://github.com/rwaldron/johnny-five/blob/master/docs/keypad-MPR121.md)
- [Touchpad - MPR121, Sensitivity](https://github.com/rwaldron/johnny-five/blob/master/docs/keypad-MPR121-sensitivity.md)
- [Touchpad - MPR121QR2_SHIELD](https://github.com/rwaldron/johnny-five/blob/master/docs/keypad-MPR121QR2_SHIELD.md)
- [Touchpad - MPR121_KEYPAD](https://github.com/rwaldron/johnny-five/blob/master/docs/keypad-MPR121_KEYPAD.md)
- [Touchpad - MPR121_SHIELD](https://github.com/rwaldron/johnny-five/blob/master/docs/keypad-MPR121_SHIELD.md)
- [Keypad - 3x4 I2C Nano Backpack](https://github.com/rwaldron/johnny-five/blob/main/docs/keypad-3X4_I2C_NANO_BACKPACK.md)
- [Keypad - 4x4 I2C Nano Backpack](https://github.com/rwaldron/johnny-five/blob/main/docs/keypad-4X4_I2C_NANO_BACKPACK.md)
- [Keypad - VKEY](https://github.com/rwaldron/johnny-five/blob/main/docs/keypad-analog-vkey.md)
- [Keypad - Waveshare AD](https://github.com/rwaldron/johnny-five/blob/main/docs/keypad-analog-ad.md)
- [Touchpad - Grove QTouch](https://github.com/rwaldron/johnny-five/blob/main/docs/keypad-QTOUCH.md)
- [Touchpad - MPR121](https://github.com/rwaldron/johnny-five/blob/main/docs/keypad-MPR121.md)
- [Touchpad - MPR121, Sensitivity](https://github.com/rwaldron/johnny-five/blob/main/docs/keypad-MPR121-sensitivity.md)
- [Touchpad - MPR121QR2_SHIELD](https://github.com/rwaldron/johnny-five/blob/main/docs/keypad-MPR121QR2_SHIELD.md)
- [Touchpad - MPR121_KEYPAD](https://github.com/rwaldron/johnny-five/blob/main/docs/keypad-MPR121_KEYPAD.md)
- [Touchpad - MPR121_SHIELD](https://github.com/rwaldron/johnny-five/blob/main/docs/keypad-MPR121_SHIELD.md)
### Relay
- [Relay](https://github.com/rwaldron/johnny-five/blob/master/docs/relay.md)
- [Relay - Collection](https://github.com/rwaldron/johnny-five/blob/master/docs/relay-collection.md)
- [Relay On Analog Pin](https://github.com/rwaldron/johnny-five/blob/master/docs/relay-on-analog-pin.md)
- [Relay](https://github.com/rwaldron/johnny-five/blob/main/docs/relay.md)
- [Relay - Collection](https://github.com/rwaldron/johnny-five/blob/main/docs/relay-collection.md)
- [Relay On Analog Pin](https://github.com/rwaldron/johnny-five/blob/main/docs/relay-on-analog-pin.md)
### Shift Register
- [Shift Register](https://github.com/rwaldron/johnny-five/blob/master/docs/shift-register.md)
- [Shift Register - Common Anode Seven Segment controller](https://github.com/rwaldron/johnny-five/blob/master/docs/shift-register-seven-segment-anode.md)
- [Shift Register - Common Anode Seven segments, Chained](https://github.com/rwaldron/johnny-five/blob/master/docs/shift-register-daisy-chain-anode.md)
- [Shift Register - Seven Segment controller](https://github.com/rwaldron/johnny-five/blob/master/docs/shift-register-seven-segment.md)
- [Shift Register - Seven segments, Chained](https://github.com/rwaldron/johnny-five/blob/master/docs/shift-register-daisy-chain.md)
- [Shift Register](https://github.com/rwaldron/johnny-five/blob/main/docs/shift-register.md)
- [Shift Register - Common Anode Seven Segment controller](https://github.com/rwaldron/johnny-five/blob/main/docs/shift-register-seven-segment-anode.md)
- [Shift Register - Common Anode Seven segments, Chained](https://github.com/rwaldron/johnny-five/blob/main/docs/shift-register-daisy-chain-anode.md)
- [Shift Register - Seven Segment controller](https://github.com/rwaldron/johnny-five/blob/main/docs/shift-register-seven-segment.md)
- [Shift Register - Seven segments, Chained](https://github.com/rwaldron/johnny-five/blob/main/docs/shift-register-daisy-chain.md)
### Infrared Reflectance
- [IR Motion](https://github.com/rwaldron/johnny-five/blob/master/docs/ir-motion.md)
- [IR Proximity](https://github.com/rwaldron/johnny-five/blob/master/docs/ir-proximity.md)
- [IR Reflectance](https://github.com/rwaldron/johnny-five/blob/master/docs/ir-reflect.md)
- [IR Reflectance Array](https://github.com/rwaldron/johnny-five/blob/master/docs/ir-reflect-array.md)
- [IR Motion](https://github.com/rwaldron/johnny-five/blob/main/docs/ir-motion.md)
- [IR Proximity](https://github.com/rwaldron/johnny-five/blob/main/docs/ir-proximity.md)
- [IR Reflectance](https://github.com/rwaldron/johnny-five/blob/main/docs/ir-reflect.md)
- [IR Reflectance Array](https://github.com/rwaldron/johnny-five/blob/main/docs/ir-reflect-array.md)
### Proximity
- [Proximity](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity.md)
- [Proximity - EVShield EV3 (IR)](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-EVS_EV3_IR.md)
- [Proximity - EVShield EV3 (IR)](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-EVS_EV3_IR-alert.md)
- [Proximity - EVShield EV3 (Ultrasonic)](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-EVS_EV3_US.md)
- [Proximity - EVShield EV3 (Ultrasonic)](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-EVS_EV3_US-alert.md)
- [Proximity - GP2Y0A710K0F](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-GP2Y0A710K0F.md)
- [Proximity - HC-SR04](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-hcsr04.md)
- [Proximity - HC-SR04 (Analog)](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-hcsr04-analog.md)
- [Proximity - HC-SR04 I2C Backpack](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-hcsr04-i2c.md)
- [Proximity - LIDAR-Lite](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-lidarlite.md)
- [Proximity - MB1000](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-mb1000.md)
- [Proximity - MB1003](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-mb1003.md)
- [Proximity - MB1010](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-mb1010.md)
- [Proximity - MB1230](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-mb1230.md)
- [Proximity - SRF10](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-srf10.md)
- [Proximity](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity.md)
- [Proximity - EVShield EV3 (IR)](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-EVS_EV3_IR.md)
- [Proximity - EVShield EV3 (IR)](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-EVS_EV3_IR-alert.md)
- [Proximity - EVShield EV3 (Ultrasonic)](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-EVS_EV3_US.md)
- [Proximity - EVShield EV3 (Ultrasonic)](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-EVS_EV3_US-alert.md)
- [Proximity - GP2Y0A710K0F](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-GP2Y0A710K0F.md)
- [Proximity - HC-SR04](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-hcsr04.md)
- [Proximity - HC-SR04 (Analog)](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-hcsr04-analog.md)
- [Proximity - HC-SR04 I2C Backpack](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-hcsr04-i2c.md)
- [Proximity - LIDAR-Lite](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-lidarlite.md)
- [Proximity - MB1000](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-mb1000.md)
- [Proximity - MB1003](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-mb1003.md)
- [Proximity - MB1010](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-mb1010.md)
- [Proximity - MB1230](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-mb1230.md)
- [Proximity - SRF10](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-srf10.md)
### Motion
- [Motion](https://github.com/rwaldron/johnny-five/blob/master/docs/motion.md)
- [Motion - GP2Y0A60SZLF](https://github.com/rwaldron/johnny-five/blob/master/docs/motion-GP2Y0A60SZLF.md)
- [Motion - GP2Y0D805Z0F](https://github.com/rwaldron/johnny-five/blob/master/docs/motion-gp2y0d805z0f.md)
- [Motion - GP2Y0D810Z0F](https://github.com/rwaldron/johnny-five/blob/master/docs/motion-gp2y0d810z0f.md)
- [Motion - GP2Y0D810Z0F](https://github.com/rwaldron/johnny-five/blob/master/docs/motion-gp2y0d815z0f.md)
- [Motion](https://github.com/rwaldron/johnny-five/blob/main/docs/motion.md)
- [Motion - GP2Y0A60SZLF](https://github.com/rwaldron/johnny-five/blob/main/docs/motion-GP2Y0A60SZLF.md)
- [Motion - GP2Y0D805Z0F](https://github.com/rwaldron/johnny-five/blob/main/docs/motion-gp2y0d805z0f.md)
- [Motion - GP2Y0D810Z0F](https://github.com/rwaldron/johnny-five/blob/main/docs/motion-gp2y0d810z0f.md)
- [Motion - GP2Y0D810Z0F](https://github.com/rwaldron/johnny-five/blob/main/docs/motion-gp2y0d815z0f.md)
### Joystick
- [Joystick](https://github.com/rwaldron/johnny-five/blob/master/docs/joystick.md)
- [Joystick - Esplora](https://github.com/rwaldron/johnny-five/blob/master/docs/joystick-esplora.md)
- [Joystick - Pan + Tilt control](https://github.com/rwaldron/johnny-five/blob/master/docs/joystick-pantilt.md)
- [Joystick - Sparkfun Shield](https://github.com/rwaldron/johnny-five/blob/master/docs/joystick-shield.md)
- [Joystick](https://github.com/rwaldron/johnny-five/blob/main/docs/joystick.md)
- [Joystick - Esplora](https://github.com/rwaldron/johnny-five/blob/main/docs/joystick-esplora.md)
- [Joystick - Pan + Tilt control](https://github.com/rwaldron/johnny-five/blob/main/docs/joystick-pantilt.md)
- [Joystick - Sparkfun Shield](https://github.com/rwaldron/johnny-five/blob/main/docs/joystick-shield.md)
### LCD
- [Grove - RGB LCD Color Previewer](https://github.com/rwaldron/johnny-five/blob/master/docs/lcd-rgb-bgcolor-previewer.md)
- [LCD](https://github.com/rwaldron/johnny-five/blob/master/docs/lcd.md)
- [LCD - Enumerate characters](https://github.com/rwaldron/johnny-five/blob/master/docs/lcd-enumeratechars.md)
- [LCD - I2C](https://github.com/rwaldron/johnny-five/blob/master/docs/lcd-i2c.md)
- [LCD - I2C PCF8574](https://github.com/rwaldron/johnny-five/blob/master/docs/lcd-i2c-PCF8574.md)
- [LCD - I2C Runner](https://github.com/rwaldron/johnny-five/blob/master/docs/lcd-i2c-runner.md)
- [LCD - Runner 16x2](https://github.com/rwaldron/johnny-five/blob/master/docs/lcd-runner.md)
- [LCD - Runner 20x4](https://github.com/rwaldron/johnny-five/blob/master/docs/lcd-runner-20x4.md)
- [LCD - Tessel 2 16x2](https://github.com/rwaldron/johnny-five/blob/master/docs/lcd-16x2-tessel.md)
- [Tessel 2 + Grove - RGB LCD Color Previewer](https://github.com/rwaldron/johnny-five/blob/master/docs/lcd-rgb-bgcolor-previewer-tessel.md)
- [Tessel 2 + Grove - RGB LCD Display](https://github.com/rwaldron/johnny-five/blob/master/docs/lcd-rgb-tessel-grove-JHD1313M1.md)
- [Grove - RGB LCD Color Previewer](https://github.com/rwaldron/johnny-five/blob/main/docs/lcd-rgb-bgcolor-previewer.md)
- [LCD](https://github.com/rwaldron/johnny-five/blob/main/docs/lcd.md)
- [LCD - Enumerate characters](https://github.com/rwaldron/johnny-five/blob/main/docs/lcd-enumeratechars.md)
- [LCD - I2C](https://github.com/rwaldron/johnny-five/blob/main/docs/lcd-i2c.md)
- [LCD - I2C PCF8574](https://github.com/rwaldron/johnny-five/blob/main/docs/lcd-i2c-PCF8574.md)
- [LCD - I2C Runner](https://github.com/rwaldron/johnny-five/blob/main/docs/lcd-i2c-runner.md)
- [LCD - Runner 16x2](https://github.com/rwaldron/johnny-five/blob/main/docs/lcd-runner.md)
- [LCD - Runner 20x4](https://github.com/rwaldron/johnny-five/blob/main/docs/lcd-runner-20x4.md)
- [LCD - Tessel 2 16x2](https://github.com/rwaldron/johnny-five/blob/main/docs/lcd-16x2-tessel.md)
- [Tessel 2 + Grove - RGB LCD Color Previewer](https://github.com/rwaldron/johnny-five/blob/main/docs/lcd-rgb-bgcolor-previewer-tessel.md)
- [Tessel 2 + Grove - RGB LCD Display](https://github.com/rwaldron/johnny-five/blob/main/docs/lcd-rgb-tessel-grove-JHD1313M1.md)
### Compass/Magnetometer
- [Compass - Find north](https://github.com/rwaldron/johnny-five/blob/master/docs/magnetometer-north.md)
- [Compass - HMC5883L](https://github.com/rwaldron/johnny-five/blob/master/docs/compass-hmc5883l.md)
- [Compass - HMC6352](https://github.com/rwaldron/johnny-five/blob/master/docs/compass-hmc6352.md)
- [Compass - Logger](https://github.com/rwaldron/johnny-five/blob/master/docs/magnetometer-log.md)
- [Compass - MAG3110](https://github.com/rwaldron/johnny-five/blob/master/docs/compass-MAG3110.md)
- [Compass - MAG3110 on Tessel 2](https://github.com/rwaldron/johnny-five/blob/master/docs/compass-MAG3110-tessel.md)
- [Compass / Magnetometer](https://github.com/rwaldron/johnny-five/blob/master/docs/magnetometer.md)
- [Compass - Find north](https://github.com/rwaldron/johnny-five/blob/main/docs/magnetometer-north.md)
- [Compass - HMC5883L](https://github.com/rwaldron/johnny-five/blob/main/docs/compass-hmc5883l.md)
- [Compass - HMC6352](https://github.com/rwaldron/johnny-five/blob/main/docs/compass-hmc6352.md)
- [Compass - Logger](https://github.com/rwaldron/johnny-five/blob/main/docs/magnetometer-log.md)
- [Compass - MAG3110](https://github.com/rwaldron/johnny-five/blob/main/docs/compass-MAG3110.md)
- [Compass - MAG3110 on Tessel 2](https://github.com/rwaldron/johnny-five/blob/main/docs/compass-MAG3110-tessel.md)
- [Compass / Magnetometer](https://github.com/rwaldron/johnny-five/blob/main/docs/magnetometer.md)
### Piezo
- [Piezo](https://github.com/rwaldron/johnny-five/blob/master/docs/piezo.md)
- [Piezo](https://github.com/rwaldron/johnny-five/blob/main/docs/piezo.md)
### IMU/Multi
- [IMU - BNO055](https://github.com/rwaldron/johnny-five/blob/master/docs/imu-bno055.md)
- [IMU - BNO055 (Orientation)](https://github.com/rwaldron/johnny-five/blob/master/docs/imu-bno055-orientation.md)
- [IMU - LSM303C](https://github.com/rwaldron/johnny-five/blob/master/docs/imu-lsm303c.md)
- [IMU - MPU6050](https://github.com/rwaldron/johnny-five/blob/master/docs/imu-mpu6050.md)
- [Multi - BME280](https://github.com/rwaldron/johnny-five/blob/master/docs/multi-BME280.md)
- [Multi - BMP085](https://github.com/rwaldron/johnny-five/blob/master/docs/multi-bmp085.md)
- [Multi - BMP180](https://github.com/rwaldron/johnny-five/blob/master/docs/multi-bmp180.md)
- [Multi - DHT11_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/master/docs/multi-DHT11_I2C_NANO_BACKPACK.md)
- [Multi - DHT21_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/master/docs/multi-DHT21_I2C_NANO_BACKPACK.md)
- [Multi - DHT22_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/master/docs/multi-DHT22_I2C_NANO_BACKPACK.md)
- [Multi - HIH6130](https://github.com/rwaldron/johnny-five/blob/master/docs/multi-HIH6130.md)
- [Multi - HTU21D](https://github.com/rwaldron/johnny-five/blob/master/docs/multi-htu21d.md)
- [Multi - MPL115A2](https://github.com/rwaldron/johnny-five/blob/master/docs/multi-mpl115a2.md)
- [Multi - MPL3115A2](https://github.com/rwaldron/johnny-five/blob/master/docs/multi-mpl3115a2.md)
- [Multi - MS5611](https://github.com/rwaldron/johnny-five/blob/master/docs/multi-MS5611.md)
- [Multi - SHT31D](https://github.com/rwaldron/johnny-five/blob/master/docs/multi-sht31d.md)
- [Multi - SI7020](https://github.com/rwaldron/johnny-five/blob/master/docs/multi-SI7020.md)
- [Multi - SI7021](https://github.com/rwaldron/johnny-five/blob/master/docs/multi-SI7021.md)
- [Multi - TH02](https://github.com/rwaldron/johnny-five/blob/master/docs/multi-TH02.md)
- [IMU - BNO055](https://github.com/rwaldron/johnny-five/blob/main/docs/imu-bno055.md)
- [IMU - BNO055 (Orientation)](https://github.com/rwaldron/johnny-five/blob/main/docs/imu-bno055-orientation.md)
- [IMU - LSM303C](https://github.com/rwaldron/johnny-five/blob/main/docs/imu-lsm303c.md)
- [IMU - MPU6050](https://github.com/rwaldron/johnny-five/blob/main/docs/imu-mpu6050.md)
- [Multi - BME280](https://github.com/rwaldron/johnny-five/blob/main/docs/multi-BME280.md)
- [Multi - BMP085](https://github.com/rwaldron/johnny-five/blob/main/docs/multi-bmp085.md)
- [Multi - BMP180](https://github.com/rwaldron/johnny-five/blob/main/docs/multi-bmp180.md)
- [Multi - DHT11_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/main/docs/multi-DHT11_I2C_NANO_BACKPACK.md)
- [Multi - DHT21_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/main/docs/multi-DHT21_I2C_NANO_BACKPACK.md)
- [Multi - DHT22_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/main/docs/multi-DHT22_I2C_NANO_BACKPACK.md)
- [Multi - HIH6130](https://github.com/rwaldron/johnny-five/blob/main/docs/multi-HIH6130.md)
- [Multi - HTU21D](https://github.com/rwaldron/johnny-five/blob/main/docs/multi-htu21d.md)
- [Multi - MPL115A2](https://github.com/rwaldron/johnny-five/blob/main/docs/multi-mpl115a2.md)
- [Multi - MPL3115A2](https://github.com/rwaldron/johnny-five/blob/main/docs/multi-mpl3115a2.md)
- [Multi - MS5611](https://github.com/rwaldron/johnny-five/blob/main/docs/multi-MS5611.md)
- [Multi - SHT31D](https://github.com/rwaldron/johnny-five/blob/main/docs/multi-sht31d.md)
- [Multi - SI7020](https://github.com/rwaldron/johnny-five/blob/main/docs/multi-SI7020.md)
- [Multi - SI7021](https://github.com/rwaldron/johnny-five/blob/main/docs/multi-SI7021.md)
- [Multi - TH02](https://github.com/rwaldron/johnny-five/blob/main/docs/multi-TH02.md)
### Sensors
- [Accelerometer](https://github.com/rwaldron/johnny-five/blob/master/docs/accelerometer.md)
- [Accelerometer - ADXL335](https://github.com/rwaldron/johnny-five/blob/master/docs/accelerometer-adxl335.md)
- [Accelerometer - ADXL345](https://github.com/rwaldron/johnny-five/blob/master/docs/accelerometer-adxl345.md)
- [Accelerometer - LIS3DH](https://github.com/rwaldron/johnny-five/blob/master/docs/accelerometer-LIS3DH.md)
- [Accelerometer - MMA7361](https://github.com/rwaldron/johnny-five/blob/master/docs/accelerometer-mma7361.md)
- [Accelerometer - MMA8452](https://github.com/rwaldron/johnny-five/blob/master/docs/accelerometer-MMA8452.md)
- [Accelerometer - MPU6050](https://github.com/rwaldron/johnny-five/blob/master/docs/accelerometer-mpu6050.md)
- [Accelerometer - Pan + Tilt](https://github.com/rwaldron/johnny-five/blob/master/docs/accelerometer-pan-tilt.md)
- [Altimeter - BMP085](https://github.com/rwaldron/johnny-five/blob/master/docs/altimeter-BMP085.md)
- [Altimeter - BMP180](https://github.com/rwaldron/johnny-five/blob/master/docs/altimeter-BMP180.md)
- [Altimeter - MPL3115A2](https://github.com/rwaldron/johnny-five/blob/master/docs/altimeter-mpl3115a2.md)
- [Altimeter - MS5611](https://github.com/rwaldron/johnny-five/blob/master/docs/altimeter-MS5611.md)
- [Barometer - BMP085](https://github.com/rwaldron/johnny-five/blob/master/docs/barometer-BMP085.md)
- [Barometer - BMP180](https://github.com/rwaldron/johnny-five/blob/master/docs/barometer-BMP180.md)
- [Barometer - MPL115A2](https://github.com/rwaldron/johnny-five/blob/master/docs/barometer-mpl115a2.md)
- [Barometer - MPL3115A2](https://github.com/rwaldron/johnny-five/blob/master/docs/barometer-mpl3115a2.md)
- [Barometer - MS5611](https://github.com/rwaldron/johnny-five/blob/master/docs/barometer-MS5611.md)
- [Gyro](https://github.com/rwaldron/johnny-five/blob/master/docs/gyro.md)
- [Gyro - Analog LPR5150AL](https://github.com/rwaldron/johnny-five/blob/master/docs/gyro-lpr5150l.md)
- [Gyro - I2C MPU6050](https://github.com/rwaldron/johnny-five/blob/master/docs/gyro-mpu6050.md)
- [Hygrometer - DHT11_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/master/docs/hygrometer-DHT11_I2C_NANO_BACKPACK.md)
- [Hygrometer - DHT21_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/master/docs/hygrometer-DHT21_I2C_NANO_BACKPACK.md)
- [Hygrometer - DHT22_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/master/docs/hygrometer-DHT22_I2C_NANO_BACKPACK.md)
- [Hygrometer - HIH6130](https://github.com/rwaldron/johnny-five/blob/master/docs/hygrometer-HIH6130.md)
- [Hygrometer - HTU21D](https://github.com/rwaldron/johnny-five/blob/master/docs/hygrometer-htu21d.md)
- [Hygrometer - SHT31D](https://github.com/rwaldron/johnny-five/blob/master/docs/hygrometer-sht31d.md)
- [Hygrometer - SI7021](https://github.com/rwaldron/johnny-five/blob/master/docs/hygrometer-SI7021.md)
- [Hygrometer - TH02](https://github.com/rwaldron/johnny-five/blob/master/docs/hygrometer-TH02.md)
- [Sensor](https://github.com/rwaldron/johnny-five/blob/master/docs/sensor.md)
- [Sensor - Digital Microwave](https://github.com/rwaldron/johnny-five/blob/master/docs/sensor-digital-microwave.md)
- [Sensor - Flex sensor](https://github.com/rwaldron/johnny-five/blob/master/docs/flex.md)
- [Sensor - Force sensitive resistor](https://github.com/rwaldron/johnny-five/blob/master/docs/sensor-fsr.md)
- [Sensor - Microphone](https://github.com/rwaldron/johnny-five/blob/master/docs/microphone.md)
- [Sensor - Photoresistor](https://github.com/rwaldron/johnny-five/blob/master/docs/photoresistor.md)
- [Sensor - Potentiometer](https://github.com/rwaldron/johnny-five/blob/master/docs/potentiometer.md)
- [Sensor - Slide potentiometer](https://github.com/rwaldron/johnny-five/blob/master/docs/sensor-slider.md)
- [Thermometer - BMP085](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-bmp085.md)
- [Thermometer - BMP180](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-BMP180.md)
- [Thermometer - DHT11_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-DHT11_I2C_NANO_BACKPACK.md)
- [Thermometer - DHT21_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-DHT21_I2C_NANO_BACKPACK.md)
- [Thermometer - DHT22_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-DHT22_I2C_NANO_BACKPACK.md)
- [Thermometer - DS18B20](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-ds18b20.md)
- [Thermometer - Dual DS18B20](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-dual-ds18b20.md)
- [Thermometer - HIH6130](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-HIH6130.md)
- [Thermometer - HTU21D](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-htu21d.md)
- [Thermometer - LM335](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-lm335.md)
- [Thermometer - LM35](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-lm35.md)
- [Thermometer - MAX31850](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-max31850k.md)
- [Thermometer - MCP9808](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-MCP9808.md)
- [Thermometer - MPL115A2](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-mpl115a2.md)
- [Thermometer - MPL3115A2](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-mpl3115a2.md)
- [Thermometer - MPU6050](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-mpu6050.md)
- [Thermometer - MS5611](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-MS5611.md)
- [Thermometer - SHT31D](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-sht31d.md)
- [Thermometer - SI7020](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-SI7020.md)
- [Thermometer - SI7021](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-SI7021.md)
- [Thermometer - TH02](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-TH02.md)
- [Thermometer - TMP102](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-tmp102.md)
- [Thermometer - TMP36](https://github.com/rwaldron/johnny-five/blob/master/docs/temperature-tmp36.md)
- [Accelerometer](https://github.com/rwaldron/johnny-five/blob/main/docs/accelerometer.md)
- [Accelerometer - ADXL335](https://github.com/rwaldron/johnny-five/blob/main/docs/accelerometer-adxl335.md)
- [Accelerometer - ADXL345](https://github.com/rwaldron/johnny-five/blob/main/docs/accelerometer-adxl345.md)
- [Accelerometer - LIS3DH](https://github.com/rwaldron/johnny-five/blob/main/docs/accelerometer-LIS3DH.md)
- [Accelerometer - MMA7361](https://github.com/rwaldron/johnny-five/blob/main/docs/accelerometer-mma7361.md)
- [Accelerometer - MMA8452](https://github.com/rwaldron/johnny-five/blob/main/docs/accelerometer-MMA8452.md)
- [Accelerometer - MPU6050](https://github.com/rwaldron/johnny-five/blob/main/docs/accelerometer-mpu6050.md)
- [Accelerometer - Pan + Tilt](https://github.com/rwaldron/johnny-five/blob/main/docs/accelerometer-pan-tilt.md)
- [Altimeter - BMP085](https://github.com/rwaldron/johnny-five/blob/main/docs/altimeter-BMP085.md)
- [Altimeter - BMP180](https://github.com/rwaldron/johnny-five/blob/main/docs/altimeter-BMP180.md)
- [Altimeter - MPL3115A2](https://github.com/rwaldron/johnny-five/blob/main/docs/altimeter-mpl3115a2.md)
- [Altimeter - MS5611](https://github.com/rwaldron/johnny-five/blob/main/docs/altimeter-MS5611.md)
- [Barometer - BMP085](https://github.com/rwaldron/johnny-five/blob/main/docs/barometer-BMP085.md)
- [Barometer - BMP180](https://github.com/rwaldron/johnny-five/blob/main/docs/barometer-BMP180.md)
- [Barometer - MPL115A2](https://github.com/rwaldron/johnny-five/blob/main/docs/barometer-mpl115a2.md)
- [Barometer - MPL3115A2](https://github.com/rwaldron/johnny-five/blob/main/docs/barometer-mpl3115a2.md)
- [Barometer - MS5611](https://github.com/rwaldron/johnny-five/blob/main/docs/barometer-MS5611.md)
- [Gyro](https://github.com/rwaldron/johnny-five/blob/main/docs/gyro.md)
- [Gyro - Analog LPR5150AL](https://github.com/rwaldron/johnny-five/blob/main/docs/gyro-lpr5150l.md)
- [Gyro - I2C MPU6050](https://github.com/rwaldron/johnny-five/blob/main/docs/gyro-mpu6050.md)
- [Hygrometer - DHT11_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/main/docs/hygrometer-DHT11_I2C_NANO_BACKPACK.md)
- [Hygrometer - DHT21_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/main/docs/hygrometer-DHT21_I2C_NANO_BACKPACK.md)
- [Hygrometer - DHT22_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/main/docs/hygrometer-DHT22_I2C_NANO_BACKPACK.md)
- [Hygrometer - HIH6130](https://github.com/rwaldron/johnny-five/blob/main/docs/hygrometer-HIH6130.md)
- [Hygrometer - HTU21D](https://github.com/rwaldron/johnny-five/blob/main/docs/hygrometer-htu21d.md)
- [Hygrometer - SHT31D](https://github.com/rwaldron/johnny-five/blob/main/docs/hygrometer-sht31d.md)
- [Hygrometer - SI7021](https://github.com/rwaldron/johnny-five/blob/main/docs/hygrometer-SI7021.md)
- [Hygrometer - TH02](https://github.com/rwaldron/johnny-five/blob/main/docs/hygrometer-TH02.md)
- [Sensor](https://github.com/rwaldron/johnny-five/blob/main/docs/sensor.md)
- [Sensor - Digital Microwave](https://github.com/rwaldron/johnny-five/blob/main/docs/sensor-digital-microwave.md)
- [Sensor - Flex sensor](https://github.com/rwaldron/johnny-five/blob/main/docs/flex.md)
- [Sensor - Force sensitive resistor](https://github.com/rwaldron/johnny-five/blob/main/docs/sensor-fsr.md)
- [Sensor - Microphone](https://github.com/rwaldron/johnny-five/blob/main/docs/microphone.md)
- [Sensor - Photoresistor](https://github.com/rwaldron/johnny-five/blob/main/docs/photoresistor.md)
- [Sensor - Potentiometer](https://github.com/rwaldron/johnny-five/blob/main/docs/potentiometer.md)
- [Sensor - Slide potentiometer](https://github.com/rwaldron/johnny-five/blob/main/docs/sensor-slider.md)
- [Thermometer - BMP085](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-bmp085.md)
- [Thermometer - BMP180](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-BMP180.md)
- [Thermometer - DHT11_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-DHT11_I2C_NANO_BACKPACK.md)
- [Thermometer - DHT21_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-DHT21_I2C_NANO_BACKPACK.md)
- [Thermometer - DHT22_I2C_NANO_BACKPACK](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-DHT22_I2C_NANO_BACKPACK.md)
- [Thermometer - DS18B20](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-ds18b20.md)
- [Thermometer - Dual DS18B20](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-dual-ds18b20.md)
- [Thermometer - HIH6130](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-HIH6130.md)
- [Thermometer - HTU21D](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-htu21d.md)
- [Thermometer - LM335](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-lm335.md)
- [Thermometer - LM35](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-lm35.md)
- [Thermometer - MAX31850](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-max31850k.md)
- [Thermometer - MCP9808](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-MCP9808.md)
- [Thermometer - MPL115A2](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-mpl115a2.md)
- [Thermometer - MPL3115A2](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-mpl3115a2.md)
- [Thermometer - MPU6050](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-mpu6050.md)
- [Thermometer - MS5611](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-MS5611.md)
- [Thermometer - SHT31D](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-sht31d.md)
- [Thermometer - SI7020](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-SI7020.md)
- [Thermometer - SI7021](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-SI7021.md)
- [Thermometer - TH02](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-TH02.md)
- [Thermometer - TMP102](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-tmp102.md)
- [Thermometer - TMP36](https://github.com/rwaldron/johnny-five/blob/main/docs/temperature-tmp36.md)
### Expander
- [Expander - 74HC595](https://github.com/rwaldron/johnny-five/blob/master/docs/expander-74HC595.md)
- [Expander - CD74HC4067, 16 Channel Analog Input Breakout](https://github.com/rwaldron/johnny-five/blob/master/docs/expander-CD74HC4067_NANO_BACKPACK.md)
- [Expander - LIS3DH](https://github.com/rwaldron/johnny-five/blob/master/docs/expander-LIS3DH.md)
- [Expander - MCP23008](https://github.com/rwaldron/johnny-five/blob/master/docs/expander-MCP23008.md)
- [Expander - MCP23017](https://github.com/rwaldron/johnny-five/blob/master/docs/expander-MCP23017.md)
- [Expander - MUXSHIELD2, Analog Sensors](https://github.com/rwaldron/johnny-five/blob/master/docs/expander-MUXSHIELD2-analog-read.md)
- [Expander - MUXSHIELD2, Digital Input and Output](https://github.com/rwaldron/johnny-five/blob/master/docs/expander-MUXSHIELD2-mixed.md)
- [Expander - PCA9685](https://github.com/rwaldron/johnny-five/blob/master/docs/expander-PCA9685.md)
- [Expander - PCF8574](https://github.com/rwaldron/johnny-five/blob/master/docs/expander-PCF8574.md)
- [Expander - PCF8575](https://github.com/rwaldron/johnny-five/blob/master/docs/expander-PCF8575.md)
- [Expander - PCF8591](https://github.com/rwaldron/johnny-five/blob/master/docs/expander-PCF8591.md)
- [Expander - 74HC595](https://github.com/rwaldron/johnny-five/blob/main/docs/expander-74HC595.md)
- [Expander - CD74HC4067, 16 Channel Analog Input Breakout](https://github.com/rwaldron/johnny-five/blob/main/docs/expander-CD74HC4067_NANO_BACKPACK.md)
- [Expander - LIS3DH](https://github.com/rwaldron/johnny-five/blob/main/docs/expander-LIS3DH.md)
- [Expander - MCP23008](https://github.com/rwaldron/johnny-five/blob/main/docs/expander-MCP23008.md)
- [Expander - MCP23017](https://github.com/rwaldron/johnny-five/blob/main/docs/expander-MCP23017.md)
- [Expander - MUXSHIELD2, Analog Sensors](https://github.com/rwaldron/johnny-five/blob/main/docs/expander-MUXSHIELD2-analog-read.md)
- [Expander - MUXSHIELD2, Digital Input and Output](https://github.com/rwaldron/johnny-five/blob/main/docs/expander-MUXSHIELD2-mixed.md)
- [Expander - PCA9685](https://github.com/rwaldron/johnny-five/blob/main/docs/expander-PCA9685.md)
- [Expander - PCF8574](https://github.com/rwaldron/johnny-five/blob/main/docs/expander-PCF8574.md)
- [Expander - PCF8575](https://github.com/rwaldron/johnny-five/blob/main/docs/expander-PCF8575.md)
- [Expander - PCF8591](https://github.com/rwaldron/johnny-five/blob/main/docs/expander-PCF8591.md)
### Photon Weather Shield
- [Photon Weather Shield: Moisture](https://github.com/rwaldron/johnny-five/blob/master/docs/sensor-photon-weather-shield-moisture.md)
- [Photon Weather Shield: Moisture](https://github.com/rwaldron/johnny-five/blob/main/docs/sensor-photon-weather-shield-moisture.md)
### Lego EVShield
- [Button - EVShield EV3](https://github.com/rwaldron/johnny-five/blob/master/docs/button-EVS_EV3.md)
- [Button - EVShield NXT](https://github.com/rwaldron/johnny-five/blob/master/docs/button-EVS_NXT.md)
- [Color - EVShield EV3 (Code)](https://github.com/rwaldron/johnny-five/blob/master/docs/color-EVS_EV3.md)
- [Color - EVShield EV3 (Raw)](https://github.com/rwaldron/johnny-five/blob/master/docs/color-raw-EVS_EV3.md)
- [Color - EVShield NXT (Code)](https://github.com/rwaldron/johnny-five/blob/master/docs/color-EVS_NXT.md)
- [Light - BH1750](https://github.com/rwaldron/johnny-five/blob/master/docs/light-ambient-BH1750.md)
- [Light - EVShield EV3 (Ambient)](https://github.com/rwaldron/johnny-five/blob/master/docs/light-ambient-EVS_EV3.md)
- [Light - EVShield EV3 (Reflected)](https://github.com/rwaldron/johnny-five/blob/master/docs/light-reflected-EVS_EV3.md)
- [Light - EVShield NXT (Ambient)](https://github.com/rwaldron/johnny-five/blob/master/docs/light-ambient-EVS_NXT.md)
- [Light - EVShield NXT (Reflected)](https://github.com/rwaldron/johnny-five/blob/master/docs/light-reflected-EVS_NXT.md)
- [Light - TSL2561](https://github.com/rwaldron/johnny-five/blob/master/docs/light-ambient-TSL2561.md)
- [Motor - EVShield EV3](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-EVS_EV3.md)
- [Motor - EVShield NXT](https://github.com/rwaldron/johnny-five/blob/master/docs/motor-EVS_NXT.md)
- [Proximity - EVShield EV3 (IR)](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-EVS_EV3_IR-alert.md)
- [Proximity - EVShield EV3 (Ultrasonic)](https://github.com/rwaldron/johnny-five/blob/master/docs/proximity-EVS_EV3_US-alert.md)
- [Button - EVShield EV3](https://github.com/rwaldron/johnny-five/blob/main/docs/button-EVS_EV3.md)
- [Button - EVShield NXT](https://github.com/rwaldron/johnny-five/blob/main/docs/button-EVS_NXT.md)
- [Color - EVShield EV3 (Code)](https://github.com/rwaldron/johnny-five/blob/main/docs/color-EVS_EV3.md)
- [Color - EVShield EV3 (Raw)](https://github.com/rwaldron/johnny-five/blob/main/docs/color-raw-EVS_EV3.md)
- [Color - EVShield NXT (Code)](https://github.com/rwaldron/johnny-five/blob/main/docs/color-EVS_NXT.md)
- [Light - BH1750](https://github.com/rwaldron/johnny-five/blob/main/docs/light-ambient-BH1750.md)
- [Light - EVShield EV3 (Ambient)](https://github.com/rwaldron/johnny-five/blob/main/docs/light-ambient-EVS_EV3.md)
- [Light - EVShield EV3 (Reflected)](https://github.com/rwaldron/johnny-five/blob/main/docs/light-reflected-EVS_EV3.md)
- [Light - EVShield NXT (Ambient)](https://github.com/rwaldron/johnny-five/blob/main/docs/light-ambient-EVS_NXT.md)
- [Light - EVShield NXT (Reflected)](https://github.com/rwaldron/johnny-five/blob/main/docs/light-reflected-EVS_NXT.md)
- [Light - TSL2561](https://github.com/rwaldron/johnny-five/blob/main/docs/light-ambient-TSL2561.md)
- [Motor - EVShield EV3](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-EVS_EV3.md)
- [Motor - EVShield NXT](https://github.com/rwaldron/johnny-five/blob/main/docs/motor-EVS_NXT.md)
- [Proximity - EVShield EV3 (IR)](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-EVS_EV3_IR-alert.md)
- [Proximity - EVShield EV3 (Ultrasonic)](https://github.com/rwaldron/johnny-five/blob/main/docs/proximity-EVS_EV3_US-alert.md)
### Intel Edison + Grove IoT Kit
- [Intel Edison + Grove - Accelerometer (ADXL345)](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-accelerometer-adxl345-edison.md)
- [Intel Edison + Grove - Accelerometer (MMA7660)](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-accelerometer-mma7660-edison.md)
- [Intel Edison + Grove - Air quality sensor](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-gas-tp401-edison.md)
- [Intel Edison + Grove - Barometer (BMP180)](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-barometer-edison.md)
- [Intel Edison + Grove - Button](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-button-edison.md)
- [Intel Edison + Grove - Compass (HMC588L)](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-compass-edison.md)
- [Intel Edison + Grove - Flame Sensor](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-flame-sensor-edison.md)
- [Intel Edison + Grove - Gas (MQ2)](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-gas-mq2-edison.md)
- [Intel Edison + Grove - Humidity & Temperature (TH02)](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-humidity-temperature-edison.md)
- [Intel Edison + Grove - I2C Motor Driver](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-i2c-motor-driver-edison.md)
- [Intel Edison + Grove - Joystick](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-joystick-edison.md)
- [Intel Edison + Grove - LED](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-led-edison.md)
- [Intel Edison + Grove - Light Sensor (TSL2561)](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-light-sensor-edison.md)
- [Intel Edison + Grove - Moisture Sensor](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-moisture-edison.md)
- [Intel Edison + Grove - Q Touch](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-q-touch.md)
- [Intel Edison + Grove - RGB LCD](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-lcd-rgb-edison.md)
- [Intel Edison + Grove - RGB LCD Color Previewer](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-lcd-rgb-bgcolor-previewer-edison.md)
- [Intel Edison + Grove - RGB LCD temperature display](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-lcd-rgb-temperature-display-edison.md)
- [Intel Edison + Grove - Relay](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-relay-edison.md)
- [Intel Edison + Grove - Rotary Potentiometer](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-rotary-potentiometer-edison.md)
- [Intel Edison + Grove - Servo](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-servo-edison.md)
- [Intel Edison + Grove - Touch](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-touch-edison.md)
- [Intel Edison + Grove - Accelerometer (ADXL345)](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-accelerometer-adxl345-edison.md)
- [Intel Edison + Grove - Accelerometer (MMA7660)](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-accelerometer-mma7660-edison.md)
- [Intel Edison + Grove - Air quality sensor](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-gas-tp401-edison.md)
- [Intel Edison + Grove - Barometer (BMP180)](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-barometer-edison.md)
- [Intel Edison + Grove - Button](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-button-edison.md)
- [Intel Edison + Grove - Compass (HMC588L)](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-compass-edison.md)
- [Intel Edison + Grove - Flame Sensor](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-flame-sensor-edison.md)
- [Intel Edison + Grove - Gas (MQ2)](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-gas-mq2-edison.md)
- [Intel Edison + Grove - Humidity & Temperature (TH02)](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-humidity-temperature-edison.md)
- [Intel Edison + Grove - I2C Motor Driver](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-i2c-motor-driver-edison.md)
- [Intel Edison + Grove - Joystick](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-joystick-edison.md)
- [Intel Edison + Grove - LED](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-led-edison.md)
- [Intel Edison + Grove - Light Sensor (TSL2561)](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-light-sensor-edison.md)
- [Intel Edison + Grove - Moisture Sensor](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-moisture-edison.md)
- [Intel Edison + Grove - Q Touch](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-q-touch.md)
- [Intel Edison + Grove - RGB LCD](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-lcd-rgb-edison.md)
- [Intel Edison + Grove - RGB LCD Color Previewer](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-lcd-rgb-bgcolor-previewer-edison.md)
- [Intel Edison + Grove - RGB LCD temperature display](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-lcd-rgb-temperature-display-edison.md)
- [Intel Edison + Grove - Relay](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-relay-edison.md)
- [Intel Edison + Grove - Rotary Potentiometer](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-rotary-potentiometer-edison.md)
- [Intel Edison + Grove - Servo](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-servo-edison.md)
- [Intel Edison + Grove - Touch](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-touch-edison.md)
### Grove IoT Kit (Seeed Studio)
- [Grove - Button](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-button.md)
- [Grove - Joystick](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-joystick.md)
- [Grove - LED](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-led.md)
- [Grove - Motor (I2C Driver)](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-i2c-motor-driver.md)
- [Grove - RGB LCD](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-lcd-rgb.md)
- [Grove - RGB LCD temperature display](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-lcd-rgb-temperature-display.md)
- [Grove - Rotary Potentiometer](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-rotary-potentiometer.md)
- [Grove - Servo](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-servo.md)
- [Grove - Touch](https://github.com/rwaldron/johnny-five/blob/master/docs/grove-touch.md)
- [Grove - Button](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-button.md)
- [Grove - Joystick](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-joystick.md)
- [Grove - LED](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-led.md)
- [Grove - Motor (I2C Driver)](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-i2c-motor-driver.md)
- [Grove - RGB LCD](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-lcd-rgb.md)
- [Grove - RGB LCD temperature display](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-lcd-rgb-temperature-display.md)
- [Grove - Rotary Potentiometer](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-rotary-potentiometer.md)
- [Grove - Servo](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-servo.md)
- [Grove - Touch](https://github.com/rwaldron/johnny-five/blob/main/docs/grove-touch.md)
### Micro Magician V2
- [Micro Magician V2 - Accelerometer](https://github.com/rwaldron/johnny-five/blob/master/docs/micromagician-accelerometer.md)
- [Micro Magician V2 - Motor](https://github.com/rwaldron/johnny-five/blob/master/docs/micromagician-motor.md)
- [Micro Magician V2 - Servo](https://github.com/rwaldron/johnny-five/blob/master/docs/micromagician-servo.md)
- [Micro Magician V2 - Accelerometer](https://github.com/rwaldron/johnny-five/blob/main/docs/micromagician-accelerometer.md)
- [Micro Magician V2 - Motor](https://github.com/rwaldron/johnny-five/blob/main/docs/micromagician-motor.md)
- [Micro Magician V2 - Servo](https://github.com/rwaldron/johnny-five/blob/main/docs/micromagician-servo.md)
### TinkerKit
- [TinkerKit - Accelerometer](https://github.com/rwaldron/johnny-five/blob/master/docs/tinkerkit-accelerometer.md)
- [TinkerKit - Blink](https://github.com/rwaldron/johnny-five/blob/master/docs/tinkerkit-blink.md)
- [TinkerKit - Button](https://github.com/rwaldron/johnny-five/blob/master/docs/tinkerkit-button.md)
- [TinkerKit - Combo](https://github.com/rwaldron/johnny-five/blob/master/docs/tinkerkit-combo.md)
- [TinkerKit - Continuous servo](https://github.com/rwaldron/johnny-five/blob/master/docs/tinkerkit-continuous-servo.md)
- [TinkerKit - Gyro](https://github.com/rwaldron/johnny-five/blob/master/docs/tinkerkit-gyroscope.md)
- [TinkerKit - Joystick](https://github.com/rwaldron/johnny-five/blob/master/docs/tinkerkit-joystick.md)
- [TinkerKit - Linear potentiometer](https://github.com/rwaldron/johnny-five/blob/master/docs/tinkerkit-linear-pot.md)
- [TinkerKit - Rotary potentiometer](https://github.com/rwaldron/johnny-five/blob/master/docs/tinkerkit-rotary.md)
- [TinkerKit - Temperature](https://github.com/rwaldron/johnny-five/blob/master/docs/tinkerkit-thermistor.md)
- [TinkerKit - Tilt](https://github.com/rwaldron/johnny-five/blob/master/docs/tinkerkit-tilt.md)
- [TinkerKit - Touch](https://github.com/rwaldron/johnny-five/blob/master/docs/tinkerkit-touch.md)
- [TinkerKit - Accelerometer](https://github.com/rwaldron/johnny-five/blob/main/docs/tinkerkit-accelerometer.md)
- [TinkerKit - Blink](https://github.com/rwaldron/johnny-five/blob/main/docs/tinkerkit-blink.md)
- [TinkerKit - Button](https://github.com/rwaldron/johnny-five/blob/main/docs/tinkerkit-button.md)
- [TinkerKit - Combo](https://github.com/rwaldron/johnny-five/blob/main/docs/tinkerkit-combo.md)
- [TinkerKit - Continuous servo](https://github.com/rwaldron/johnny-five/blob/main/docs/tinkerkit-continuous-servo.md)
- [TinkerKit - Gyro](https://github.com/rwaldron/johnny-five/blob/main/docs/tinkerkit-gyroscope.md)
- [TinkerKit - Joystick](https://github.com/rwaldron/johnny-five/blob/main/docs/tinkerkit-joystick.md)
- [TinkerKit - Linear potentiometer](https://github.com/rwaldron/johnny-five/blob/main/docs/tinkerkit-linear-pot.md)
- [TinkerKit - Rotary potentiometer](https://github.com/rwaldron/johnny-five/blob/main/docs/tinkerkit-rotary.md)
- [TinkerKit - Temperature](https://github.com/rwaldron/johnny-five/blob/main/docs/tinkerkit-thermistor.md)
- [TinkerKit - Tilt](https://github.com/rwaldron/johnny-five/blob/main/docs/tinkerkit-tilt.md)
- [TinkerKit - Touch](https://github.com/rwaldron/johnny-five/blob/main/docs/tinkerkit-touch.md)
### Wii
- [Wii Classic Controller](https://github.com/rwaldron/johnny-five/blob/master/docs/classic-controller.md)
- [Wii Nunchuck](https://github.com/rwaldron/johnny-five/blob/master/docs/nunchuk.md)
- [Wii Classic Controller](https://github.com/rwaldron/johnny-five/blob/main/docs/classic-controller.md)
- [Wii Nunchuck](https://github.com/rwaldron/johnny-five/blob/main/docs/nunchuk.md)
### Complete Bots / Projects
- [BOE Bot](https://github.com/rwaldron/johnny-five/blob/master/docs/boe-test-servos.md)
- [Bug](https://github.com/rwaldron/johnny-five/blob/master/docs/bug.md)
- [Kinect Robotic Arm Controller](https://github.com/rwaldron/johnny-five/blob/master/docs/kinect-arm-controller.md)
- [Laser Trip Wire](https://github.com/rwaldron/johnny-five/blob/master/docs/laser-trip-wire.md)
- [Line Follower](https://github.com/rwaldron/johnny-five/blob/master/docs/line-follower.md)
- [Lynxmotion Biped BRAT](https://github.com/rwaldron/johnny-five/blob/master/docs/brat.md)
- [Motobot](https://github.com/rwaldron/johnny-five/blob/master/docs/motobot.md)
- [Navigator](https://github.com/rwaldron/johnny-five/blob/master/docs/navigator.md)
- [Nodebot](https://github.com/rwaldron/johnny-five/blob/master/docs/nodebot.md)
- [Phoenix Hexapod](https://github.com/rwaldron/johnny-five/blob/master/docs/phoenix.md)
- [Radar](https://github.com/rwaldron/johnny-five/blob/master/docs/radar.md)
- [Robotic Claw](https://github.com/rwaldron/johnny-five/blob/master/docs/claw.md)
- [Whisker](https://github.com/rwaldron/johnny-five/blob/master/docs/whisker.md)
- [Bug](https://github.com/rwaldron/johnny-five/blob/main/docs/bug.md)
- [Kinect Robotic Arm Controller](https://github.com/rwaldron/johnny-five/blob/main/docs/kinect-arm-controller.md)
- [Laser Trip Wire](https://github.com/rwaldron/johnny-five/blob/main/docs/laser-trip-wire.md)
- [Line Follower](https://github.com/rwaldron/johnny-five/blob/main/docs/line-follower.md)
- [Lynxmotion Biped BRAT](https://github.com/rwaldron/johnny-five/blob/main/docs/brat.md)
- [Motobot](https://github.com/rwaldron/johnny-five/blob/main/docs/motobot.md)
- [Navigator](https://github.com/rwaldron/johnny-five/blob/main/docs/navigator.md)
- [Nodebot](https://github.com/rwaldron/johnny-five/blob/main/docs/nodebot.md)
- [Phoenix Hexapod](https://github.com/rwaldron/johnny-five/blob/main/docs/phoenix.md)
- [Radar](https://github.com/rwaldron/johnny-five/blob/main/docs/radar.md)
- [Robotic Claw](https://github.com/rwaldron/johnny-five/blob/main/docs/claw.md)
- [Whisker](https://github.com/rwaldron/johnny-five/blob/main/docs/whisker.md)
### Component Plugin Template
- [Example plugin](https://github.com/rwaldron/johnny-five/blob/master/docs/plugin.md)
- [Example plugin](https://github.com/rwaldron/johnny-five/blob/main/docs/plugin.md)
### IO Plugins
- [Led Blink on Electric Imp](https://github.com/rwaldron/johnny-five/blob/master/docs/imp-io.md)
- [Led Blink on Intel Edison Arduino Board](https://github.com/rwaldron/johnny-five/blob/master/docs/edison-io-arduino.md)
- [Led Blink on Intel Edison Mini Board](https://github.com/rwaldron/johnny-five/blob/master/docs/edison-io-miniboard.md)
- [Led Blink on Intel Galileo Gen 2](https://github.com/rwaldron/johnny-five/blob/master/docs/galileo-io.md)
- [Led Blink on Raspberry Pi](https://github.com/rwaldron/johnny-five/blob/master/docs/raspi-io.md)
- [Led Blink on Spark Core](https://github.com/rwaldron/johnny-five/blob/master/docs/spark-io.md)
- [Led Blink on pcDuino3](https://github.com/rwaldron/johnny-five/blob/master/docs/pcduino-io.md)
- [Led Blink on Electric Imp](https://github.com/rwaldron/johnny-five/blob/main/docs/imp-io.md)
- [Led Blink on Intel Edison Arduino Board](https://github.com/rwaldron/johnny-five/blob/main/docs/edison-io-arduino.md)
- [Led Blink on Intel Edison Mini Board](https://github.com/rwaldron/johnny-five/blob/main/docs/edison-io-miniboard.md)
- [Led Blink on Intel Galileo Gen 2](https://github.com/rwaldron/johnny-five/blob/main/docs/galileo-io.md)
- [Led Blink on Raspberry Pi](https://github.com/rwaldron/johnny-five/blob/main/docs/raspi-io.md)
- [Led Blink on Spark Core](https://github.com/rwaldron/johnny-five/blob/main/docs/spark-io.md)
- [Led Blink on pcDuino3](https://github.com/rwaldron/johnny-five/blob/main/docs/pcduino-io.md)

@@ -583,0 +582,0 @@ <!--extract-end:examples-->

const Emitter = require("events");
class Withinable extends Emitter {
constructor() {
super();
}
within(range, unit, callback) {
let upper;
if (typeof range === "number") {
upper = range;
range = [0, upper];
}
if (!Array.isArray(range)) {
throw new Error("within expected a range array");
}
if (typeof unit === "function") {
callback = unit;
unit = "value";
}
if (typeof this[unit] === "undefined") {
return this;
}
this.on("data", () => {
const value = this[unit];
if (value >= range[0] && value <= range[1]) {
callback.call(this, null, value);
}
});
return this;
}
}
module.exports = Withinable;

Sorry, the diff of this file is too big to display