Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / IoT

Bringing Up Arduino 101 (branded Genuino 101 outside the U.S.) on Ubuntu under VMware

5.00/5 (2 votes)
21 Dec 2016CPOL3 min read 7.8K  
This guide demonstrates how to run the Arduino 101 platform on Ubuntu using a VMware* Workstation.

This article is for our sponsors at CodeProject. These articles are intended to provide you with information on products and services that we consider useful and of value to developers

Get access to the new Intel® IoT Developer Kit, a complete hardware and software solution that allows developers to create exciting new solutions with the Intel® Galileo and Intel® Edison boards. Visit the Intel® Developer Zone for IoT.

Introduction

The Arduino 101* (branded Genuino 101* outside the U.S.) is a learning and development platform that uses a low-power Intel® Curie™ module powered by the Intel® Quark™ SE microcontroller. The Intel® Quark™ SE microcontroller contains a single core 32 MHz x86 (Intel® Quark™ processor core) and the 32 MHz Argonaut RISC Core (ARC)* EM processor. The Arduino 101* platform runs on Windows*, Macintosh* OSX, and Linux* operating systems. This guide demonstrates how to run the Arduino 101* platform on Ubuntu* using a VMware* Workstation. The VMware* Workstation is a virtual machine that allows you to run applications from other OSes in Linux* from the desktop.

Hardware components

The hardware components used in this project are listed below:

Setting up VMware* workstation on Ubuntu*

Go to the VMware website to download and install the latest VMware workstation player for Windows*. Then go to the Ubuntu* website and download the latest version of Ubuntu Desktop*.

Open VMware and create a new virtual machine using the downloaded Ubuntu* image.

Development board download

Visit https://www.arduino.cc/en/Main/Software to download the Arduino* Software IDE version 1.6.7 or later for Linux*. As of this writing, the latest Linux* Arduino* IDE version supported by Arduino 101* is arduino-1.6.11-linux64.tar.xz.

Copy arduino-1.6.11-linux64.tar.xz to the Ubuntu* folder in the VMWare environment.

Set up the environment for Arduino 101*

Untar arduino-1.6.11-linux64.tar.xz and install the Arduino IDE software.

sudo apt-get update
tar -xvf arduino-1.6.9-linux64.tar.xz
sudo mv arduino-1.6.9 /opt
cd /opt/arduino-1.6.9
~/install.sh

Bring up Arduino on Ubuntu*

1. Connect the Arduino 101 platform to the virtual machine that is running the VMWare workstation.

cd /opt/arduino-1.6.11
sudo ./arduino

Image 1

Figure 1: Bringing up the Arduino IDE* on the Ubuntu* command line

2. Choose Tools > Board > Boards Manager to launch the board manager to install the Intel® Curie™ board.

Image 2

Figure 2: Launching the Boards Manager

Image 3

Figure 3: Installing Intel® Curie™ boards

3. Choose Tools > Port and select the Arduino 101 port.

Image 4

Figure 4: Selecting the Arduino 101* port

4. Choose Tools > Board and select the Arduino 101* board.

Image 5

Figure 5: Selecting the Arduino 101* board

5. Choose File > Examples > Basics > Blink and open the blink sketch.

Image 6

Figure 6: Uploading the Blink sketch

The LED on the Arduino 101* platform should now blink.

Image 7

Figure 7: Arduino 101* with LED Blinking

Arduino 101* Libraries

The Arduino 101* Libraries are a collection of code that provide extra functionality for sketches. They make it easy to connect to Bluetooth® LE, sensors, and timers. To experiment with the built-in Arduino 101* libraries, visit https://www.arduino.cc/en/Guide/Libraries. The Arduino 101* libraries are based on the open source corelibs. If you are interested in experimenting the corelibs, visit 01.org’s GitHub*, but these are not required to use the Arduino 101* libraries.

Summary

We have described how to launch the Arduino 101* platform on Ubuntu* in VMware. Experiment with the Arduino 101* libraries, Grov*e - Starter Kit Plus, more sensors and shields to enjoy the power of the Intel® Curie™ module.

Helpful References

About the author

Nancy Le is a software engineer at Intel Corporation in the Software and Services Group working on Intel® Atom™ processor scale-enabling projects.

For more complete information about compiler optimizations, see our Optimization Notice.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)