Fetching contributors…
Cannot retrieve contributors at this time
75 lines (38 sloc) 1.27 KB

Expander - MCP23017

Using an MCP23017 Expander as a Virtual Board (16 Pin Digital IO). Pins 15-17 are used to set the I2C hardware address. By default, these pins must be connected to ground. See page eight of the data sheet

Breadboard for "Expander - MCP23017"


Fritzing diagram: docs/breadboard/expander-MCP23017.fzz


Run this example from the command line with:

node eg/expander-MCP23017.js
var five = require("johnny-five");
var board = new five.Board();

board.on("ready", function() {
  var virtual = new five.Board.Virtual(
    new five.Expander("MCP23017")

  var leds = new five.Leds(
    Array.from({ length: 8 }, function(_, i) {
      return new five.Led({ pin: i * 2, board: virtual });


    leds: leds



Copyright (c) 2012-2014 Rick Waldron Licensed under the MIT license. Copyright (c) 2015-2018 The Johnny-Five Contributors Licensed under the MIT license.