Skip to content
Rick Waldron edited this page Apr 26, 2015 · 30 revisions

The Button class constructs objects that represents a single Button attached to the physical board.

Parameters

  • pin A Number or String address for the Button pin (digital).

    var button = new five.Button(8);
    // Attached to an analog pin
    var button = new five.Button("A0");
  • options An object of property parameters.

    | Property | Type | Value/Description | Required | |---------------|----------------|------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------|----------| | pin | Number, String | Digital Pin. The Number or String address of the pin the button is attached to, ie. 5 or “I1” | yes | | invert | Boolean | true, false. Invert the up and down values. This is useful for inverting button signals when the pin itself doesn’t have built-in pullup resistor capabilities. | no | | isPullup | Boolean | true, false. Initialize as a pullup button | no | | holdtime | Number | Time in milliseconds that the button must be held until emitting a "hold" event. Defaults to 500ms | no |

Shape

{ 
  id: A user definable id value. Defaults to a generated uid
  pin: The pin address that the Button is attached to
  
  downValue: 0 or 1, depending on invert or pullup
  upValue: 0 or 1, depending on invert or pullup
  holdtime: milliseconds
}

Component Initialization

Basic

new five.Button(8);

button breadboard

Inverted

new five.Button({
  pin: 8, 
  invert: true
});

button breadboard

Usage

var five = require("johnny-five");
var board = new five.Board();

board.on("ready", function() {

  // Create a new `button` hardware instance.
  var button = new five.Button(8);

  button.on("hold", function() {
    console.log( "Button held" );
  });

  button.on("press", function() {
    console.log( "Button pressed" );
  });

  button.on("release", function() {
    console.log( "Button released" );
  });
});

Events

  • hold The button has been held for holdtime milliseconds

  • down, press The button has been pressed.

  • up, release The button has been released.

Examples

Clone this wiki locally