Get Started with the Intel® Edison Development Board on Linux*

Published: 06/20/2017, Last Updated: 03/09/2020

The Intel® Edison compute module next to a Ubuntu* desktop

This step-by-step guide will help you:

  • Assemble and connect cables to your Intel® Edison board in Step 1.
  • Run the setup tool to flash your Intel® Edison board's firmware in Step 2.
  • Connect to your Intel® Edison board over UART (serial) in Step 3.
  • Set a device password and connect your development board to Wi-Fi* in Step 4.

Host Operating System Requirements

This guide is for all host systems running a Linux* distribution.

Do You Have a Different OS?

See the getting started guides for Windows* 64-bit, or Windows* 32-bit, or Mac OS X*.

Physical Material Requirements

The Intel® Edison compute module is meant to be used with a breakout board and is typically bought together with a kit containing the compute module and a breakout board.

Supported kits are listed below, along with required materials, and a link to get started for your specific breakout board.

Intel® Edison Kit for Arduino*

Intel® Edison Breakout Board Kit

Parts in Your Kit

Contents of the Intel® Edison Kit for Arduino* retail box

  • 1Intel® Edison compute module
  • 2Arduino* expansion board
  • 3Assembly hardware

Contents of the Intel® Edison Breakout Board Kit retail box

  • 1Intel® Edison compute module
  • 2Mini breakout board
  • 3Assembly hardware

Additional Cables Required

Additional cables include two micro USB cables and DC power supply

  • 4Micro-B USB to Standard-B USB cables (x 2)
  • 5Direct current (DC) power supply (see specs)

Additional cables include two micro USB cables

  • 4Micro-B USB to Standard-B USB cables (x 2)

Get Started

Choose an option below to view instructions for your specific breakout board.

Assemble the Arduino* expansion board › Assemble the mini breakout board ›

Step 1: Assemble Board

The Intel® Edison compute module is meant to be used with a breakout board, so you need to secure the compute module to your breakout board before you can use it.

Choose an option below to view instructions for your specific breakout board.

The Arduino* expansion board assembled with the Intel® Edison compute module

The mini breakout board assembled with the Intel® Edison compute module

Arduino* expansion board › Mini breakout board ›

Are You Ready to Continue?

You should have the Intel® Edison compute module installed, all the development cables connected, and the Intel® Edison board powered on before you run the setup tool.

Assemble Arduino* Expansion Board

This page presents the steps to install the Intel® Edison compute module to the Arduino* expansion board, plus connect micro USB cables and a DC power supply.

Inside the Intel® Edison Kit for Arduino* Box

Contents of the Intel® Edison Kit for Arduino* retail box

1Intel® Edison Compute Module
Refer to the Product Brief for the specs of the Intel® Edison compute module.

2Arduino* Expansion Board
Hardware pin-compatible with Arduino* Uno R3 shields. Refer to the Intel® Edison Kit for Arduino* Hardware Guide for specs.

3Assembly Hardware

  • Small hex nuts (x 2) - For securing the Intel® Edison compute module to the expansion board.
  • Screws (x 4) & plastic spacers (x 4) - To keep the expansion board stable and lifted off of surfaces that may cause a short circuit.

Additional Cables Required

Additional cables include two micro USB cables and DC power supply

4Micro-B USB to Standard-B USB Cables (x 2)
These common micro USB cables are used for data transfer and charging mobile phones and other consumer electronics. You will need two micro USB cables during initial development setup.

5Direct Current (DC) Power Supply rated as follows:

  • 7-15 V DC
  • At least 1500mA
  • Center/inner pin is positive pole
Do You Need an External Power Supply?

An external power supply is the most stable and reliable way of powering the Intel® Edison board.

However, you can power your board using the device mode USB cable if you do not have an external power supply. Refer to the Connect the Intel® Edison Board to Your Computer for Development section later on this page for more details.

Assembling the Intel® Edison Kit for Arduino*

Install the Intel® Edison Compute Module

The Intel® Edison compute module is meant to be used with breakout boards or custom printed circuit boards. Secure the compute module to the Arduino* expansion board before you use it.

 Installing the Intel® Edison compute module

  1. Locate the Intel® Edison compute module, Arduino* expansion board, and two metal hex nuts.

    Two hex nuts, the Intel® Edison compute module, and the Arduino* expansion board laid out on a table

  2. Place the Intel® Edison compute module within the white outline on the Arduino* expansion board, lining up the holes on the Intel® Edison compute module with the screws on the expansion board.

    Placement of the Intel® Edison compute module on the Arduino* expansion board

  3. Press down on the Intel® Edison compute module just below the words “What will you make?” until you feel a snap.

    Pressing down on the Intel® Edison compute module

    Make Sure the Compute Module is Seated Properly.

    If you do not feel a snap, a loosely connected Intel® Edison compute module will produce unexpected behaviors.

    Examples of the Intel® Edison compute module seated improperly and properly.

  4. Use the two hex nuts to secure the module to the expansion board. Hand tighten the hex nuts onto the two screws that protrude through the board.

    Securing compute module with the supplied hex nuts

  5. Your Arduino* expansion board should look like the photo below when the Intel® Edison compute module is installed.

    The Intel® Edison compute module installed

Install the Plastic Spacers

To add stability to the expansion board and to help avoid accidental short circuits, attach the four plastic spacers supplied in your Intel® Edison Kit for Arduino* box to act as legs for the expansion board.

 Installing the plastic spacers

  1. Locate the four metal screws and four plastic spacers in the Intel® Edison Kit for Arduino* box.

    Arduino* expansion board, four plastic spacers, and four screws laid out on a table

  2. In one of the four holes in the corner of the Arduino* expansion board, insert a screw through the top.

    A screw inserted into expansion board

  3. Twist and tighten one of the white plastic spacers onto the screw. The spacer should be on the bottom of the expansion board to act as legs.

    Tightening a spacer onto the screw

  4. Repeat for the remaining three screws and spacers.

    Bottom view of all spacers installed

  5. Your Arduino* expansion board should look like the photo below when the plastic spacer legs are attached.

    Side view of the Arduino* expansion board with plastic spacers installed

 

While plugging in every cable is not required all the time, a cable setup for initial development purposes with the Arduino* expansion board would look like the photo below:

A photographic cable and microswitch diagram with numbered callouts

1 USB Device Mode Set (details)
The microswitch is toggled down towards the two micro USB ports.

2Device Mode Cable Connected (details)
A micro USB cable is plugged into the top micro USB port, and the other end plugged into your computer. This port is used for: 5V power, programming the Intel® Edison board using the Arduino* IDE, reading/writing to the onboard flash memory from your computer like a disk drive, and/or using Ethernet over USB.

3 UART/Serial Cable Connected (details)
A micro USB cable is plugged into the bottom micro USB port, and the other end plugged into your computer. This port is used for shell access via serial communication.

4 External Power Supply Connected (details)
A 7-15 volt DC power supply is plugged into the power barrel connector for stable and reliable power. External power is not always required but highly recommended.

Can I Use Only USB for Power?

In many cases, you can use only the device mode cable 2 to power your board.

However, if you are experiencing unexpected behavior, your computer's USB port may not be reliably supplying power to the board. Things you can try:

  • If you are connecting the board to a laptop, plug in your laptop’s AC adapter.
  • Use a powered USB hub.

Would You Like to Know More About the USB Modes and Ports on Your Breakout Board?
Learn more on the Appendix: Connecting Cables page.

Power LED Indicator

A green LED (labeled DS1 on the Arduino* expansion board) should light up and stay lit when the device mode 2 and/or DC power supply 4 cables are connected.

A green LED lit up on the Arduino* expansion board to the top right of the Intel® Edison compute module

Troubleshooting

The Green LED Does Not Light Up.

Check your power supply and/or device mode cable connections.

The Green LED is Turning On and Off.
If you are using only the device mode micro USB cable for power, your computer's USB port is not reliably supplying power to the board. Use an external DC power supply or a powered USB hub. If you are connecting the board to a laptop, plug in your laptop’s AC adapter.


One sign that your board is fully initialized is when your computer mounts a new drive named "Edison", much like inserting a SD card into your computer.

A hard disk drive named 'Edison' highlighted in a Windows Explorer window

Next Steps

You should now have the Intel® Edison compute module installed, all the development cables connected, and the Intel® Edison board powered on. Continue to Step 2: Run Setup Tool.

Appendix: Connecting Cables

Explore when and how to use all the cable ports on the Arduino* expansion board for the Intel® Edison compute module.

While plugging in every cable is not required all the time, a cable setup for initial development purposes with the Arduino* expansion board would look like the photo below:

A photographic cable and microswitch diagram with numbered callouts

USB Device Mode vs USB Host Mode

Before connecting USB cables to an Intel® Edison breakout board, you should know the difference between USB device mode and USB host mode.

When the Intel® Edison board is in host mode, the board acts like a computer. A USB peripheral (such as a mouse, keyboard, or webcam) can be plugged into the Intel® Edison board.

When the Intel® Edison board is in device mode, the board acts as a computer peripheral to your computer. Connect the Intel® Edison board to your computer while in device mode in order to:

  • Supply 5V power to the Intel® Edison board
  • Read/write to the onboard flash memory from your computer like a disk drive
  • Program the Intel® Edison board over USB using the Arduino* IDE
  • Program the Intel® Edison board using the Intel® XDK IDE via Ethernet over USB (instead of Wi-Fi*)

Setting the USB Mode on the Arduino Expansion Board

The hardware slider on the Arduino expansion board switches between USB device and host mode.

Device Mode

The microswitch is toggled down towards the two micro USB ports. A USB cable with a micro-B type connector can now be plugged into the top micro USB port and the other end plugged into your computer.

 Using device mode on the Arduino* expansion board

Photographic diagram for setting the microswitch for device mode

Host Mode

The microswitch is toggled up towards the standard USB port. A USB peripheral with a standard type connector can now be plugged into the USB port above the hardware slider. In addition, you must supply 7-15 V DC external power via the DC power barrel.

 Using host mode on the Arduino* expansion board

Photographic diagram for setting the microswitch for host mode

UART/Serial

Connect to the shell on your Intel® Edison board using a serial connection via Terminal or PuTTY. Use these commands to flash firmware, configure Wi-Fi, or identify the board’s IP address.

Plug a USB cable with a micro-B type connector into the bottom micro USB port, and the other end to your computer.

 Connecting to the UART/serial port on the Arduino* expansion board

A USB cable connected to the UART/serial port of the Arduino* expansion board

Supplying External Power

The Intel® Edison board can be powered via the device mode micro USB port, an external power supply, or both.

This is especially important to note since the USB ports on some computers do not reliably supply 5V power. An external 7-15 V DC power supply is the most stable and reliable way of powering the Intel® Edison board.

If you are going to use more power intensive features such as Wi-Fi*, a servo motor, or an Arduino shield, use a DC power supply. You must always use an external power supply when using USB peripherals in host mode.

 Plugging in a DC power supply to the power barrel connector on the Arduino* expansion board

An external power supply connected to the power barrel of the Arduino* expansion board

What External Power Supply Should be Used?

Use a direct current (DC) power supply rated as follows:

  • 7-15 V DC
  • At least 1500mA
  • Center/inner pin is positive pole

Next Steps

You should now have a better understanding of the USB modes and cables required for development. Use your browser's back button to return to the previous page you were reading.

If you have not finished assembling the Arduino* expansion board, go to Assemble Arduino* Expansion Board. Otherwise, continue to Step 2: Run Setup Tool.

Would you Like to Know More About the Arduino* Expansion Board?

Refer to the Intel® Edison Kit for Arduino* Hardware Guide (PDF) for technical specifications and detailed diagrams.

Assemble Mini Breakout Board

This page presents the steps to install the Intel® Edison compute module to the mini breakout board, plus connect micro USB cables.

Inside the Intel® Edison Breakout Board Kit Box

Contents of the Intel® Edison Breakout Board Kit retail box

1 Intel® Edison Compute Module
Refer to the Product Brief for the specs of the Intel® Edison compute module.

2 Mini Breakout Board
Refer to the Intel® Edison Breakout Board Hardware Guide (PDF) for specs.

3 Small Hex Nuts (x 2)
For securing the Intel® Edison compute module to the mini breakout board.

Additional Cables Required

Additional cables include two micro USB cables

4 Micro-B USB to Standard-B USB Cables (x 2)
These common micro USB cables are used for data transfer and charging mobile phones and other consumer electronics. You will need two micro USB cables during the initial development setup.

Install the Intel® Edison Compute Module

The Intel® Edison compute module is meant to be used with breakout boards or custom printed circuit boards. If you have the Intel® Edison Breakout Board Kit, you will need to secure the compute module to the mini breakout board before you can use it.

 Installing the Intel® Edison compute module

  1. Locate the Intel® Edison compute module, mini breakout board, and two metal hex nuts.

    The Intel® Edison compute module, the mini breakout board, and two hex nuts laid out on a table

  2. Place the Intel® Edison compute module on the mini breakout board, lining up the holes on the Intel® Edison compute module with the screws on the breakout board.

    Placement of the Intel® Edison compute module on the mini breakout board

  3. Press down on the Intel® Edison compute module just below the words “What will you make?” until you feel a snap.

    Pressing down on the Intel® Edison compute module

    Make sure the compute module is seated properly.

    If you do not feel a snap, a loosely connected Intel® Edison compute module will produce unexpected behaviors.

    Examples of Intel® Edison compute module seated improperly and properly

  4. Use the two hex nuts to secure the module to the breakout board. Hand tighten the hex nuts onto the two screws that protrude through the board.

    Securing compute module with the supplied hex nuts

  5. Your mini breakout board should look like the photo below when the Intel® Edison compute module is installed.

    The Intel® Edison compute module installed

Connect the Intel® Edison Board to Your Computer for Development

While plugging in every cable is not required all the time, a cable setup for initial development purposes with the mini breakout board would look like the photo below:

A photographic cable diagram with numbered callouts

1 Device Mode Cable Connected (details)
A micro-B USB cable is plugged into the bottom micro USB port, and the other end plugged into your computer. This port is used for: 5V power, programming the Intel® Edison board using the Arduino IDE, reading/writing to the onboard flash memory from your computer like a disk drive, and/or using Ethernet over USB.

2 UART/Serial Cable Connected (details)
A micro USB cable is plugged into the top micro USB port, and the other end plugged into your computer. This port is used for shell access via serial communication.

Would you Like to Know More About the USB Modes and Ports on Your Breakout Board?

Learn more on the Appendix: Connecting Cables page.

Power LED Indicator

A green LED (labeled DS1 on the mini breakout board) should light up and stay lit when the device mode 1 cable is connected.

A green LED lit up on the mini breakout board to the right of the Intel® Edison compute module

Troubleshooting

The Green LED Does Not Light Up.
Check your device mode cable connection.

The Green LED is Turning On and Off.
Your computer's USB port is not reliably supplying power to the board. Plug in your laptop’s AC adapter, or use a powered USB hub.


One sign that your board is fully initialized is when your computer mounts a new drive named "Edison", much like inserting a SD card into your computer.

A hard disk drive named 'Edison' highlighted in a Windows Explorer window

Next Steps

You should now have the Intel® Edison compute module installed, all the development cables connected, and the Intel® Edison board powered on. Continue to Step 2: Run Setup Tool.

Appendix: Connecting Cables

Explore when and how to use all the cable ports on the mini breakout board for the Intel® Edison compute module.

While plugging in every cable is not required all the time, a cable setup for the initial development purposes with the Intel® Edison mini breakout board would look like the photo below:

A photographic cable diagram with numbered callouts

USB Device Mode vs USB Host Mode

Before connecting USB cables to an Intel® Edison breakout board, you should know the difference between USB device mode and USB host mode.

When the Intel® Edison board is in host mode, the board acts like a computer. A USB peripheral (such as a mouse, keyboard, or webcam) can be plugged into the Intel® Edison board.

When the Intel® Edison board is in device mode, the board acts as a computer peripheral to your computer. Connect the Intel® Edison board to your computer while in device mode in order to:

  • Supply 5V power to the Intel® Edison board
  • Read/write to the onboard flash memory from your computer like a disk drive
  • Program the Intel® Edison board over USB using the Arduino* IDE
  • Program the Intel® Edison board using the Intel® XDK IDE via Ethernet over USB (instead of Wi-Fi*)

Setting the USB Mode on the Mini Breakout Board

The Intel® Edison mini breakout board has a single USB 2.0 interface. Plug in a USB cable with either a micro-B or micro-A type connector to automatically switch between device and host mode.

Device Mode

Plug in a USB cable with a micro-B type connector, and plug the other end into your computer.

Example of micro-B USB cable used for device mode

Host Mode

Plug in a USB peripheral with a micro-A USB connector, or use a micro USB OTG to USB adapter. In addition, you must supply 7-15 VDC external power via the J21 pin on the front of board (noted in the photo below) or the J22 solder pads on the back of the board (not displayed).

Example of micro-A USB cable used for host mode with additional callout for J22 power pin

UART/Serial

Connect to the shell on your Intel® Edison board using a serial connection via Terminal or PuTTY. Use these commands to flash firmware, configure Wi-Fi, or identify the board’s IP address.

Plug a USB cable with a micro-B type connector into the top micro USB port, and the other end to your computer.

A USB cable connected to the UART/serial port of the mini breakout board

Supplying External Power

The Intel® Edison board can be powered via the device mode micro USB port, an external power supply, or both.

his is especially important to note since the USB ports on some computers do not reliably supply 5V power. An external 7-15 V DC power supply is the most stable and reliable way of powering the Intel® Edison board.

If you are going to use more power intensive features such as Wi-Fi*, a servo motor, or an Arduino shield, use a DC power supply. You must always use an external power supply when using USB peripherals in host mode.

7-15 Volt DC Power

Supply 7-15 V DC external power via the J21 pin on the front of board (noted in the photo below) or the J22 solder pads on the back of the board (not displayed).

Pin J21 on the mini breakout board for external power

Rechargeable Battery Power

A rechargeable lithium-ion battery can be attached to J2 on the front of the board. The breakout board will recharge the battery whenever power is applied via J21 or J22, or via J3 (when the board is attached to a USB host).

Pin J2 on the mini breakout board for external battery power

Next Steps

You should now have a better understanding of the USB modes and cables required for development. Use your browser's back button to return to the previous page you were reading.

If you have not finished assembling your mini breakout board, go to Assemble Mini Breakout Board. Otherwise, continue to Step 2: Run Setup Tool.

Would you Like to Know More About the Mini Breakout Board?

Refer to the Intel® Edison Breakout Board Hardware Guide (PDF) for technical specifications and detailed diagrams.

Step 2: Run Setup Tool

Terminology 101

  • Firmware is the operating system of embedded microcontrollers. The default firmware on the Intel® Edison board is a version of Linux* built using the Yocto Project*.
  • Flashing is the process of overwriting the firmware on the board's memory, much like applying system updates on your computer.

Are you running an RPM-based distribution of Linux*?

The setup tool is compatible with Ubuntu* Linux* distributions but not RPM-based distributions, such as CentOS*. Instead, continue with the instructions to flash your board using the manual process.

Do you have a different OS?

Go to the setup tool step for Windows* 64-bit, Windows* 32-bit, or Mac OS X*.

Are you using Android Things*?

Android Things* (formerly called Brillo*) is an alternative operating system from Google* based on Android that can run on the Intel® Edison board instead of the default Linux* OS built using the Yocto Project*. Go to the System Image Downloads page to get Intel® Edison image for Android Things*.

Download and Install Pre-requisite Tools

Download the latest Yocto* Poky Image

The setup tool looks for the previous version of Yocto* Poky image. Prior to installing and running the setup tool, you need to download and extract the files of the latest (patched) Yocto* poky image.

  1. Go to the downloads page and select the Latest Yocto* Poky image link under Intel® Edison Module Firmware Software Release 3.5.
  2. Create the Image directory within your working directory named Edison here:
    $ cd ~/Edison
    $ mkdir Image
    
  3. Go to the Downloads folder, move the downloaded image file to the newly created Image directory.:
    $ cd ~/Downloads
    $ mv iot-devkit-prof-dev-image-edison-20160606-patch.zip ~/Edison/Image
    
  4. Move to the Image directory, extract the image files and delete the .zip file
    $ cd ~/Edison/Image
    $ unzip iot-devkit-prof-dev-image-edison-20160606-patch.zip
    $ rm iot-devkit-prof-dev-image-edison-20160606-patch.zip
    

Download and Run the Setup Tool

  1. Get the latest setup tool for Linux* from downloads listed under the Installers heading.
  2. Move the downloaded file to your working directory, named Edison here:
    $ mv Intel_Edison_Setup_Lin_2016.2.002.tar.gz ~/Edison
    
  3. Move to your working directory (named Edison here), and extract the downloaded tar.gz file.
    $ cd ~/Edison
    $ gunzip Intel_Edison_Setup_Lin_2016.2.002.tar.gz
    $ tar -xvf Intel_Edison_Setup_Lin_2016.2.002.tar
    
  4. Move to the setup tool directory and run the install_GUI.sh script.
    $ cd Intel_Edison_Setup_Lin_2016.2.002
    $ sudo ./install_GUI.sh
    
  5. Follow the setup tool on-screen instructions. Click Next where needed.
  6. The Flash Tool searches for the Yocto* Poky image which is now replaced with the patched version that you downloaded earlier. When you select the Flash Firmware button, select the option Select the local image and provide the path to the edison-image-edison.hddimg file in the Image directory.

    Indicating the path to the image file

  7. When requested by the setup tool, plug in your board to your computer using the device mode cable.

    Photographic diagram for setting the microswitch for device mode

    On the Arduino* expansion board: The microswitch is toggled down towards the two micro USB ports. A USB cable with a micro-B type connector can now be plugged into the top micro USB port, and the other end plugged into your computer.

    Device mode for mini breakout board

    On the mini breakout board: Plug in a USB cable with a micro-B type connector, and plug the other end into your computer.

    Is the setup tool not detecting your board?
    A step-by-step troubleshooting guide can be found in the Troubleshooting and Tips section.
  8. The setup tool will attempt to flash your board. The entire flashing process may take up to 5-6 minutes.

    Due to many factors (although mainly related to USB drivers), sometimes the setup tool cannot flash your board.

    Intel® Edison board did not update warning message

    If you get an error message about an unsuccessful image update while using the setup tool, use the manual process for flashing your board in the Troubleshooting and Tips section.

  9. When the setup tool is finished, you can close it.
    The setup tool is not just for initial setup.
    If you want to re-flash or update the firmware on your Intel® Edison board in the future, you can re-run the setup tool.

Keep Going

Your Intel® Edison board should now be up-to-date with the latest firmware. Start communicating with your board; 

Step 3: Connect over UART/Serial

To configure the Intel® Edison board, remotely connect to the board's shell using a wired USB serial connection or a wireless SSH connection.

Once connected, you have access to the Linux* operating system running on the board. You can then execute special Linux* commands to change the hostname and password of your board and set up Wi-Fi* for example.

The following part of this page will show you how to establish a serial connn to your board using a micro USB cable (since your Intel® Edison board is not online and configured to usectioe SSH yet) from a Linux* computer.

Do you have a different OS?
Go to the UART/serial connection steps for Windows* 64-bit, Windows* 32-bit, or Mac OS X*.
  1. Install a terminal client (Screen)
    If you do not have a shell session manager installed such as Screen, you will need to install one by issuing the sudo apt-get install screen command in Terminal:
  2. Establish a serial connection to your Intel® Edison board
    Use the screen utility to connect to your Intel® Edison board using /dev/ttyUSB0 as the device dev path and the baud rate 115200. For example $ sudo screen /dev/ttyUSB0 115200

     logging into the Intel® Edison board via Terminal and screen

Install a Terminal Client (Screen)

  1. In a Terminal window, install the Screen utility via the apt-get install command. If prompted, enter your computer user password.
    $ sudo apt-get install screen

    Installing Screen via Terminal

Establish a Serial Connection to Your Intel® Edison Board

  1. Connect a micro-B type USB cable to the UART/serial micro USB port of your Intel® Edison breakout board and the other end to your computer.

    Side-by-side example of connecting to the UART/serial port on the Arduino* expansion board and the mini breakout board

    With the Arduino* expansion board (shown on the left), serial communication occurs over the bottom micro USB connector. With the mini breakout board (right), it is the top micro USB connector.

    Do you want more detailed cable connection information for your board?
    Refer to the Appendix: Connecting Cables page for either the Arduino* expansion board or the mini breakout board.
  2. Issue the following command to check the serial connection:
    $ ls /dev/ttyUSB*
    
  3. Use the screen utility to connect to your Intel® Edison board using /dev/ttyUSB0 as the device dev path and the baud rate 115200. For example:
    $ sudo screen /dev/ttyUSB0 115200
    

    If prompted, enter your computer user password to continue.

    Are you unable to connect to /dev/ttyUSB0?
    Refer to There is no ttyUSB0 device in Terminal in the Troubleshooting and Tips section.
  4. When you see a blank screen, press Enter.
    This blank screen is normal. For Intel® Edison boards running older firmware, you may need to press Enter twice.

    Logging as root userBlank screen in Terminal after connecting to an Intel® Edison board

  5. At the login prompt, type root for the username and press Enter.
  6. By default, root does not have a password set. You are now logged into your Intel® Edison board and can run shell commands.

    Successfully logged in without password

    Do you see a prompt for a password?
    Your Intel® Edison board was previously configured. If you do not know the password, you will need to re-flash your board. Refer to I don't know the password for my board in Troubleshooting and Tips.

Warning:

Failing to close the Screen connection fully may stop you from being able to log in next time without rebooting the Intel® Edison board. Close Screen sessions every time you are done with your serial connection.

To end a Screen session, type Ctrl + A, then Ctrl + D.

Keep Going

Initialize some important Intel® Edison development board settings such SSH and Wi-Fi* using the configure_edison command.

Step 4: Run configure_edison

Now that you are remotely connected to your Intel® Edison board's shell, you have access to the Linux* operating system running on the board.

The first thing you'll want to configure on a new Intel® Edison board is a device password in order to enable SSH, and then set up Wi-Fi*.

Both of these options can be set by running configure_edison --setup, however this guide will use configure_edison --password and configure_edison --wifi in separate steps for clarity.

  1. Set a device password and name on your Intel® Edison board
    You must enable SSH on the Intel® Edison board in order to wirelessly program your board using for example the Intel® XDK IDE. Setting a password on an Intel® Edison board will enable SSH. Set a password by running configure_edison --password.
  2. Connect your Intel® Edison board to a Wi-Fi* network
    The Intel® Edison compute module has built-in Wi-Fi* that you can enable by running the configure_edison --wifi command.

Tip Run configure_edison --help at any time to see what other commands are available.

Get Started

Begin by setting a device name and password.

Set Device Password and Name

You must enable SSH on the Wi-Fi* interface of the Intel® Edison board in order to wirelessly program your board. Setting a device password on an Intel® Edison board will enable SSH. Set a password by running configure_edison --password.

Optionally, set a device name by running configure_edison --name. A unique device name will help in identifying your board if there are multiple boards nearby, like at a hackathon or workshop.

 Setting a password on an Intel® Edison board

Note: The animation shown here was captured on a Mac* computer but the shell commands remain the same.

  1. If you are not already logged into your board's shell, use the screen utility in Terminal to establish a serial connection.

    Logged into the shell of the Intel® Edison board

    Note: The screenshots shown here were captured on a Mac* computer but the shell commands remain the same.

  2. To set a device name, run the following command on the Intel® Edison board and follow the on-screen prompts:
    (This step is optional but recommended to help with identifying your board.)

    configure_edison --name

    Using configure_edison --name

    Name set after using configure_edison

  3. To start the password configuration wizard, run the following command on the Intel® Edison board:

    configure_edison --password

    Using configure_edison --password

  4. Follow the on-screen prompts to set a password.
    Try not to forget this password. There is no way to recover a lost password.

    If you forget this password, you will need to re-flash the firmware on the board in order to re-gain access. Refer to I don't know the password for my board in Troubleshooting & Tips if this ever happens to you.

    As a suggestion for a password that is easy to remember, make your password the same as the device name set in the previous step, or use “intel123”. You can always update your password by running the configure_edison --password command again — but only if you are already logged into the board.

    Password prompt after running configure_edison

  5. A message will confirm that a password has been successfully set and SSH enabled on the Wi-Fi* interface.

    Password set after using configure_edison

Keep Going

In the next step, run another shell command to connect your Intel® Edison board to a Wi-Fi* network.

Connect Wi-Fi*

The Intel® Edison compute module has built-in Wi-Fi* that you can enable by running the configure_edison --wifi command.

Once your board is online, seamlessly integrate Internet connectivity into your IoT application.

You will also need the IP address of your Intel® board to program it wirelessly using the Intel® XDK and Intel® System Studio IoT Edition IDEs. The configure_edison --showWiFiIP command will be shown at the end of this section.

 Connecting to Wi-Fi on the Intel® Edison board

Note: The animation shown here was captured on a Mac* computer but the shell commands remain the same.

  1. If you are not already logged into your board's shell, use the screen utility in Terminal to establish a serial connection.

    Logged into the shell of the Intel® Edison board

    Note: The screenshots shown here were captured on a Mac* computer but the shell commands remain the same.

  2. To start the Wi-Fi setup process, run the configure_edison command with the --wifi flag. Follow the on-screen prompts. configure_edison --wifi

    Running configure_edison --wifi

    Did you get a “configure_edison: not found” message?
    The firmware running on your Intel® Edison board is very old. You need to update it before continuing. Run the setup tool to update the firmware, and then follow the rest of the steps in this Getting Started guide.
  3. Your board will scan for Wi-Fi networks for approximately 10 seconds. When it is finished, a list of available networks will be displayed.
    Are there no networks listed?
    Type 0 to rescan.

    Example of multiple Wi-Fi network results after scanning

  4. Locate the network you would like to connect to in the list and make note of the corresponding number to the left of the network name. Typically you should connect to the same network that your development computer is on.

    Part 1 of choosing a Wi-Fi network to connect to

    In this example, the Sugoi network corresponds to the number 9.

  5. In the prompt, type the corresponding number of the network you would like to connect to, and then press Enter.

    Part 2 of choosing a Wi-Fi network to connect to

    In this example, to connect to the Sugoi network highlighted in the previous step, type 9.

  6. If your network requires a password or other information, enter the appropriate network credentials when prompted.

    Entering in a password for a Wi-Fi network

    In this example, the network requires a password.

  7. The board will attempt to make a connection to the network. When you see a Done message, your board has successfully connected.

    Message displayed after successfully connecting to a network

  8. Note the Wi-Fi IP address in the "Done" message. This is your board’s IP address.

    The IP address displayed in the Done message

    In this example, the IP address is 10.0.1.11.

    Tip: To get the current Wi-Fi* IP address of your board without going through the setup process again, run the following command:

    configure_edison --showWiFiIP

    The IP address for the Wi-Fi* interface will be shown on the shell.

    Using the --showWiFiIP option

To verify the connectivity, check out How do I know if my Intel® Edison board is online and accessible? in the Troubleshooting and Tips section for a few options.

Next Steps

Now that your board is online, get started programming.

Choose from Arduino*, JavaScript* and Node.js*, C/C++, Java*, or Python*. More information, download links, and guides are available on Integrated Development Environments (IDEs).

Visit Integrated Development Environments (IDEs) >

Step 5: Choose IDE

Choose and install the integrated development environment (IDE) to program your Intel® Edison board.

Which Programming Language Will You Use?

The IDE you use to program your board depends on the programming language you want to develop in. The choices are:

  • Arduino*: Arduino is an easy-to-learn, open source C++-based programming environment. It is convenient for quickly adding sensors, taking advantage of the sensor code that is already available. Since the Intel® Edison board is Arduino-pin compatible, there are also plenty of shields to choose from. The Arduino IDE is the application of choice for programming with Arduino. See Installing the Arduino IDE.
  • JavaScript* and Node.js*: These languages are great for creating web interfaces and to make devices talk to one another. They also work well in cloud connectivity. We provide the Intel® XDK to program in JavaScript and Node.js. It comes with easy-to-use project templates to jumpstart your IoT projects. See Installing the Intel® XDK.

Next Steps

See the Intel® Edison Board User Guide for steps to perform typical developer tasks, like troubleshooting and working with your board. For example, you can find information on how to manually flash your board if you encounter issues with the setup tool, and how to connect to your board using a serial terminal to access Linux commands.

Troubleshooting and Tips

Running into issues with any of the steps in this Get Started with the Intel® Edison Development Board on Linux* guide?

Do you have a different OS?
Refer to the Troubleshooting and Tips for Windows* 64-bit, Windows* 32-bit, or Mac OS X*.
  1. Scan the topics on this page for common issues, solutions, and tips.
  2. Search for additional issues in Intel® Edison Board Platform Support.

  3. Search the Support Community for the Intel® Edison board. You can also post your questions to the community forum.

What External Power supply should be used with the Arduino* expansion board?

Use a direct current (DC) power supply rated as follows:

  • 7-15 V DC
  • At least 1500mA
  • Center/inner pin is positive pole

For more details on using external power, refer to the Connecting Cables appendix article for the Arduino* expansion board.

I don't have access to a DC power supply.

In many cases, you can use the device mode micro USB cable to power your board.

Side-by-side example of connecting to the device mode port on the Arduino* expansion board and the mini breakout board

With the Arduino* expansion board (shown on the left), data transfer occurs over the top micro USB connector. With the mini breakout board (right), it is the bottom micro USB connector.

However, if you are using only the device mode micro USB cable for power and you are experiencing unexpected behavior, your computer's USB port may not be reliably supplying power to the board.

Things you can try:

  • If you are connecting the board to a laptop, plug in your laptop’s AC adapter.
  • Use a powered USB hub.

The setup tool is not detecting my board.

Follow these debugging steps in the order shown:

  1. Is the Intel® Edison compute module securely seated on the breakout board?

    A loosely connected Intel® Edison compute module will produce unexpected behaviors. Press firmly down on the Intel® Edison compute module just below the words “What will you make?” to ensure the compute module is connected to your board.

    Examples of Intel® Edison compute module seated improperly and properly

  2. Is your Intel® Edison board powered on?

    A green LED indicator should light up and stay lit when the device mode and/or DC power supply cables are connected. View details for the Arduino* expansion board or the mini breakout board.

  3. Do you have the device cable connected?

    Connect a micro-B type USB cable to the device mode micro USB port of your Intel® Edison breakout board and the other end to your computer.

    Side-by-side example of connecting to the device mode port on the Arduino* expansion board and the mini breakout board

    With the Arduino* expansion board (shown on the left), data transfer occurs over the top micro USB connector. With the mini breakout board (right), it is the bottom micro USB connector.

  4. Is your board in device mode?

    If you are working with an Arduino* expansion board, the microswitch should be toggled down towards the two micro USB ports.

    Photographic diagram for setting the microswitch for device mode

    If you are working with a mini breakout board, it has a single USB 2.0 interface. The mini breakout board will automatically switch into device mode when a USB cable with a micro-B connector is used.

    Example of micro-B USB cable used for device mode

  5. Add additional power.

    If you are using only the device mode micro USB cable for power and you are experiencing unexpected behavior, your computer's USB port may not be reliably supplying power to the board.

    Things you can try:
    • If you are connecting the board to a laptop, plug in your laptop’s AC adapter.
    • Use a powered USB hub.
    • Use an external DC power supply. Refer to the Connecting Cables appendix page for the Arduino* expansion board or mini breakout board for more details.
  6. Try a different micro USB cable and/or computer USB port.

    It is not uncommon for unexpected behaviors to occur due to bad or incompatible USB cables or USB ports. For example:

    • Some micro USB cables are meant for charging only and cannot communicate data between the Intel® Edison board and a computer.

    • If the Intel® Edison board is plugged into a USB 3.0 port, you may experience some issues with it not being powered correctly. In that case, use a DC power supply for your board, or try putting a USB 2.0 hub (preferably powered) in between your computer and your Intel® Edison board.

I don't know the password for my board.

There is no way to recover a lost password set on an Intel® Edison board. If you do not know the password, you will need to re-flash the firmware on the board in order to re-gain access.

To flash your board, follow the steps in Step 2: Run Setup Tool. Afterwards, you'll need to set a new device password and name on your Intel® Edison board. You can always update your password by running the configure_edison --password command again — but only if you are already logged into the board.

The setup tool cannot flash my board.

Due to many factors (although mainly related to USB drivers), sometimes the setup tool cannot flash your board.

Intel® Edison board did not update warning message

If you get an error message about an unsuccessful image update while using the setup tool, use the manual process for flashing your board below.

How do I update/flash the Intel® Edison board firmware manually?

Running the setup tool is the preferred method for flashing the firmware onto an Intel® Edison board, however there are times where you must manually copy files and run scripts in order to flash your board.

This process uses dfu-util, an open source program that implements the USB DFU (USB Device Firmware Upgrade) protocol.

  1. Download the pre-built Yocto* complete image from downloads listed under the "Intel® Edison Board Firmware Software Release" heading.

  2. Extract the contents of the downloaded ZIP file into a new folder such as edison-iotdk-image.

  3. Open Terminal.

  4. In Terminal, install dfu-util using the apt-get install command.

    $ sudo apt-get install dfu-util

    If you see messages indicating that these tools are already installed, continue to the next step.

  5. Use the command line to navigate to the folder you extracted the firmware image to. For example:

    $ cd ~/Downloads/edison-iotdk-image
    
  6. Run the flashall script, and then follow the onscreen prompts.

    $ sudo ./flashall.sh
  7. When requested by the script, plug in your board to your computer using the device mode cable.

    Using device mode
    On the Arduino* expansion board: The microswitch is toggled down towards the two micro USB ports. A USB cable with a micro-B type connector can now be plugged into the top micro USB port, and the other end plugged into your computer.

    Device mode for mini breakout board
    On the mini breakout board: Plug in a USB cable with a micro-B type connector, and plug the other end into your computer.

  8. The flashall script can take up to 5 minutes to complete the flashing process.

    Do not power off or unplug your board during the flashing process
    Unless requested by the script, interrupting the flashing process by unplugging the power cable may leave your board in a non-working state.

Once flashing is complete, you will need to repeat Step 3: Connect over UART (serial) and Step 4: Run configure_edison.

My board stopped responding.

If your board stops responding and you cannot get your Intel® Edison board to reboot, you may need to re-flash the firmware on the board to reset it back to a working state.

To flash your board, follow the steps in Step 2: Run Setup Tool.

Close Screen sessions every time you are done with your serial connection.

Failing to close the Screen connection fully may stop you from being able to log in next time without rebooting the Intel® Edison board. Close Screen sessions every time you are done with your serial connection.

To end a Screen session, type Ctrl + A, and then Ctrl + D.

Killing a screen session

Which USB device dev path should be used for making UART (serial) connections?

For the majority of the time, the USB device dev path will be /dev/ttyUSB0 when your Intel® Edison board is plugged into your computer. However, if you have multiple USB serial devices connected, your Intel® Edison board could be assigned ttyUSB1, or ttyUSB2.

To list all connected USB serial connections, in Terminal run the following command:

$ ls /dev/ttyUSB*

If there are multiple ttyUSB devices, try using screen to connect to any of them. Or run ls /dev/ttyUSB* both before and after connecting your Intel® Edison board to your computer to see which ttyUSB dev path updates.

If you see a "cannot access /dev/ttyUSB*" message, no USB serial devices were detected. Continue with There is no /dev/ttyUSB0 device in Terminal below.

No connected USB serial devices

There is no /dev/ttyUSB0 device in Terminal.

Follow these debugging steps in the order shown:

  1. Is the Intel® Edison compute module securely seated on the breakout board?

    A loosely connected Intel® Edison compute module will produce unexpected behaviors. Press firmly down on the Intel® Edison compute module just below the words “What will you make?” to ensure the compute module is connected to your board.

    Example of Intel® Edison compute module seated improperly and properly.

  2. Is your Intel® Edison board powered on?

    A green LED indicator should light up and stay lit when the device mode and/or DC power supply cables are connected. View details for the Arduino* expansion board or the mini breakout board.

  3. Do you have the UART/serial cable connected?

    Connect a micro-B type USB cable to the UART/serial micro USB port of your Intel® Edison breakout board and the other end to your computer.

    Side-by-side example of connecting to the UART/serial port on the Arduino* expansion board and the mini breakout board

    With the Arduino* expansion board (shown on the left), serial communication occurs over the bottom micro USB connector. With the mini breakout board (right), it is the top micro USB connector.

Which Serial Port Should be Used with the Arduino* IDE?

Try one of the /dev/ttyACM entries displayed in the Arduino* IDE Port dropdown.

Do not confuse /dev/ttyACM0 for dev/ttyUSB0.
The ttyACM0 entry is the Multifunction Composite Gadget port used for programming using the Arduino* IDE, while the ttyUSB entry is used for UART/serial connections.

A step-by-step guide is outlined in Blinking an LED with the Arduino* IDE.

Port dropdown in the Arduino* IDE

There is no /dev/ttyACM0 device related to the Intel® Edison listed in the Arduino* IDE

Follow these debugging steps in the order shown:

  1. Are you using a breakout board that is different than the Arduino* expansion board or the mini breakout board?

    Additional USB drivers may need to be installed. Please refer to the manufacturer of your breakout board.

  2. The remaining debugging steps are the same as The setup tool is not detecting my board. Continue there.

Toggle Wi-Fi* on and off using ifconfig.

Having problems connecting to a Wi-Fi* network using configure_edison --wifi? Try running the following commands in a serial communication session with your board:

$ ifconfig usb0 down
$ ifconfig wlan0 down
$ ifconfig usb0 up
$ ifconfig wlan0 up

Then run the Wi-Fi* configuration wizard again:

configure_edison --wifi

Use the Wi-Fi* command line interface (wpa_cli) to connect to a network.

Are you having problems connecting to a Wi-Fi* network using configure_edison --wifi? Try using the Wi-Fi* command line interface (wpa_cli) to set up Wi-Fi*. Read about it in Connecting to a Wireless Network via Linux* for Intel® Edison Board.

What is the IP address of my board?

After running configure_edison --wifi and successfully connecting to a Wi-Fi* network, you will be shown your IP address in the Done message.

Done message after using the --wifi option

To get the current Wi-Fi* IP address of your board without going through the setup process again, run the following command:

$ configure_edison --showWiFiIP

The IP address for the Wi-Fi* interface will be shown on the shell.

Using the --showWiFiIP option

Alternatively, enter the command:

$ ifconfig

Then look for the wlan0 IP address show as inet addr.

Example of an IP address using ifconfig

How do I know if my Intel® Edison board is online and accessible?

To verify that your Intel® Edison board is online, you can try:

  1. From the Intel® Edison board's shell, ping a publicly accessible domain such as google.com and wait for a response.

    $ ping google.com

    (Use the Ctrl+C keyboard command to exit the ping process.)

You can try a few things to verify that your Intel® Edison board is accessible:

  1. View the built-in status web page running on your Intel® Edison board by visiting the IP address in a web browser on another computer (or mobile phone) on the same Wi-Fi* network.

    Example of message displayed when successfully connected to a network

    For example, using the example above, visit http://10.0.1.11 or http://edison.local in a web browser, where the IP address was 10.0.1.11 and the device name was "edison").

  2. Using Command Prompt or Terminal, ping your board from another computer on the same network using the IP address obtained above.

    $ ping 10.0.1.11

    (Use the Ctrl+C keyboard command to exit the ping process.)

Note: Many large companies have strict Internet security policies and restrict direct IP address access of computers and devices that are on the same internal network. Check with your system administrator if you have issues.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804