0.2.0 • Public • Published


    Build Status

    EtherPort is a transport layer that works in conjunction with Firmata.js to enable communcation with an Ethernet capable Arduino or similar device.


    EtherPort can be used to communicate with an Arduino (or similar) board running either:

    1. Update your Arduino IDE's version of Firmata to the latest release following these directions. For StandardFirmataEthernet, be sure to download a Firmata release and not a ConfigurableFirmata pre-release.
    2. If using an Ethernet shield, plug the shield into the board.
    3. Connect the board to the computer via USB (for flashing StandardFirmataEthernet.ino)
    4. Connect the board to the computer via Ethernet
    5. Open Arduino IDE, then: File -> Examples -> Ethernet -> DhcpAddressPrinter and then press the upload button.
    6. Open the serial terminal and copy the IP address
    7. Obtain your ethernet port IP address (many ways to do this)
    8. In the Arduino IDE, open File -> Examples -> Firmata -> StandardFirmataEthernet
    9. If you are using an Arduino Yun, comment out the SPI.h and Ethernet.h includes and uncomment the Bridge.h and YunClient.h includes See Options A and B in the Network Configuration notes.
    10. Update these lines with your computer and board IP addresses:
    • This is the computer's address
    #define remote_ip IPAddress(10, 0, 0, 3)
    • This is the arduino's address
    #define local_ip IPAddress(10, 0, 0, 15)

    Everything on the board side should be ready now, all you need to do is install the latest Johnny-Five and EtherPort:

    npm install johnny-five etherport

    To test:

    var five = require("johnny-five");
    var EtherPort = require("etherport");
    var board = new five.Board({ 
      port: new EtherPort(3030) 
    board.on("ready", function() {
      var led = new five.Led(8);


    See LICENSE-MIT file.




    npm i etherport

    DownloadsWeekly Downloads






    Last publish


    • rwaldron