Breadboard for "Motor - Directional"

Fritzing diagram: motor-directional.fzz
Run this example from the command line with:
node eg/motor-directional.js
const {Board, Motor} = require("johnny-five");
const board = new Board();
board.on("ready", () => {
  /*
    ArduMoto
      Motor A
        pwm: 3
        dir: 12
      Motor B
        pwm: 11
        dir: 13
    AdaFruit Motor Shield
      Motor A
        pwm: ?
        dir: ?
      Motor B
        pwm: ?
        dir: ?
    Bi-Directional Motors can be initialized by:
      new five.Motor([ 3, 12 ]);
    ...is the same as...
      new five.Motor({
        pins: [ 3, 12 ]
      });
    ...is the same as...
      new five.Motor({
        pins: {
          pwm: 3,
          dir: 12
        }
      });
   */
  const motor = new Motor({
    pins: {
      pwm: 3,
      dir: 12
    }
  });
  board.repl.inject({
    motor
  });
  motor.on("start", () => {
    console.log(`start: ${Date.now()}`);
  });
  motor.on("stop", () => {
    console.log(`automated stop on timer: ${Date.now()}`);
  });
  motor.on("forward", () => {
    console.log(`forward: ${Date.now()}`);
    // demonstrate switching to reverse after 5 seconds
    board.wait(5000, () => motor.reverse(50));
  });
  motor.on("reverse", () => {
    console.log(`reverse: ${Date.now()}`);
    // demonstrate stopping after 5 seconds
    board.wait(5000, motor.stop);
  });
  // set the motor going forward full speed
  motor.forward(255);
});