Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Intel Galileo Blueprints

You're reading from   Intel Galileo Blueprints Discover the true potential of the Intel Galileo board for building exciting projects in various domains such as home automation and robotics

Arrow left icon
Product type Paperback
Published in Jun 2015
Publisher
ISBN-13 9781785281426
Length 192 pages
Edition 1st Edition
Tools
Concepts
Arrow right icon
Author (1):
Arrow left icon
Marco Schwartz Marco Schwartz
Author Profile Icon Marco Schwartz
Marco Schwartz
Arrow right icon
View More author details
Toc

Table of Contents (14) Chapters Close

Preface 1. Setting Up the Galileo Board and the Development Environment FREE CHAPTER 2. Creating a Weather Measurement and Data Logging Station 3. Controlling Outputs Using the Galileo Board 4. Monitoring Data Remotely 5. Interacting with Web APIs 6. Internet of Things with Intel Galileo 7. Controlling Your Galileo Projects from Anywhere 8. Displaying the Number of Unread Gmail E-mails on an LCD Screen 9. Automated Remote Gardening with Intel Galileo 10. Building a Complete Home Automation System 11. Building a Mobile Robot Controlled by the Intel Galileo Board 12. Controlling the Galileo Board from the Web in Real Time Using MQTT Index

What is Arduino?

Arduino is an open-source single-board microcontroller, which is used in building electronics projects. It can be connected to sensors, LEDs, motors, and other devices to create an interactive display, analysis kits, and anything else electronics-based that you can think of.

Arduino has been popular among students, hobbyists, and even professionals ever since it was first introduced in 2005.

The first Arduino started as a project for the students of the Interaction Design Institute Ivrea. A hardware thesis was contributed for Hernando Barragan's (a Columbian student) wiring design. When the wiring platform was completed, a team of researchers and developers worked on the thesis to create a lighter and less expensive prototype to be available to the open source community. The five-man team that created the prototype Arduino board was led by Massimo Banzi.

Types of Arduino boards

Before the Intel-based boards, the Arduino platform was composed of either an 8-bit Atmel AVR microcontroller or a 32-bit Atmel ARM. The latest Arduino models have 6 analog inputs and 14 digital I/O pins with a USB interface.

However, as with all developing technologies, Arduino boards have evolved a lot. Here are the Arduino versions that are commercially available along with their basic features:

Name

Release date

Processor

I/O

  

Processor

Digital I/O (pins)

Digital I/O with PWM (pins)

Analog input (pins)

Arduino Zero

May 15, 2014

ATSAMD21G18A(Cortex-M0+)

14

6

6

Intel Galileo

October 17, 2015

Intel® Quark SoC X1000 Application Processor

14

6

6

Arduino Yún

September 10, 2013

Atmega32U4

14

6

12

Atheros AR9331

Arduino Esplora

December 10, 2012

Atmega32U4

   

Arduino Micro

November 8, 2012

ATmega32U4

20

7

12

Arduino Due

Octber 22, 2012

ATSAM3X8E(Cortex-M3)

54

12

12

Arduino Leonardo

July 23, 2012

Atmega32U4

14

6

12

Arduino Mega ADK

July 13, 2011

ATmega2560[25]

54

14

16

Arduino Ethernet

July 13, 2011

ATmega328

14

4

6

Arduino Uno

September 24, 2010

ATmega328P

14

6

6

Arduino Mega2560

September 24, 2010

ATmega2560

54

15

16

Arduino Fio

March 18, 2010

ATmega328P

14

6

8

Arduino (Pro) Mini

August 23, 2008

ATmega168(Pro uses ATMega328)

14

6

6

LilyPad Arduino

October 17, 2007

ATmega168V or ATmega328V

14

6

6

Arduino Pro

 

ATmega168 or ATmega328

14

6

6

Types of Arduino Boards

Each of these board versions differ in voltage, processor frequency, dimensions, flash memory, Electrically Erasable Programmable Read-Only Memory (EEPROM), and Static Random Access Memory (SRAM).

Among these Arduino versions, the Galileo Board is the first board to be based on Intel x86 architecture.

The Intel Galileo board

Galileo is based on 32-bit Quark SoC x1000, Intel's first ever product from the Intel Quark family, which features low power small-core products. The board is hardware compatible with Arduino's expansion cards (called shields) and is software compatible with Arduino's Integrated software Development Environment (IDE). It can run on Linux, Mac OSX, and Microsoft Windows.

Currently, there are two versions of Intel Galileo—Gen 1 and Gen 2. The difference between the two lies in the General-Purpose Input/Output (GPIO) pins, the latter having improved performance and compatibility with Arduino shields and accessories.

Here is a picture of the Intel Galileo Gen 2 board:

The Intel Galileo board

You will notice that Intel Galileo has 3.3V and 5V power supply ports, 14 digital pins, 6 analog pins, In-Circuit Serial Programming (ICSP) header, and Universal Asynchronous Receiver/Transmitter (UART) ports. Galileo has similar basic port locations as the Arduino Uno R3, but it features components that stretch its capabilities beyond the usual Arduino shield system. You can find a microSD slot, RS-232 serial port, USB port, a full-size mini-PC Express slot, Joint Test Action Group (JTAG) header, an 8-byte NOR flash, and a 100Mb Ethernet port.

Here is a short description of the Intel Galileo facility features:

  • The default operating voltage of Galileo is 3.3V, but you can modify the jumper on the board to translate the voltage to 5V. The 5V option allows you to be able to use 5V Uno shields. Ensure that you check the state of this jumper before starting any project using the board.
  • The 400MHz 32-bit Intel microprocessor is simple to program, can support Advanced Configuration and Power Interface (ACPI) compatible CPU sleep states and runs on an integrated Real-Time Clock (RTC).
  • Among the 14 digital I/O ports, you can utilize 6 as Pulse Width Modulation (PWM) outputs. PWM is used to control the power sent to electrical devices: for example, to modulate the intensity of a LED or the speed of a DC motor. The analog pins have 12-bit resolution via an AD7298 A-to-D converter.
  • The 6-pin ICSP header is situated on the same location as the other Arduino boards, so you can easily plug existing shields. The ICSP supports SPI communication.
  • The Serial Peripheral Interface (SPI) port's default frequency is 4MHz to directly support the Arduino Uno shields, but you can program it to 25MHz. Note that the Galileo SPI acts as a master and cannot be a slave to other SPIs. It can be a slave to the USB client connector, though.
  • The Peripheral Component Interconnect (PCI) Express slot is compliant with PCle 2.0 and works with PCle cards with an optional converter plate. Any standard module can be connected to provide Bluetooth, Wi-Fi, or cellular connection.
  • The USB 2.0 port can support up to 128 USB endpoint devices.
  • The 10-pin Standard JTAG header is present for debugging.
  • UART TTL is available for serial communication, while a second UART is available via a 3.5mm jack for RS-232 support.
  • The USB Device port supports serial (CDC) USB communication.
  • Mice, keyboards, and other peripherals can be connected through the USB Host port.
  • The Ethernet RJ45 connector enables wired network connections.
  • Access to the micro SD is through the SD library.
  • Use of TWI/I2C bus is simplified through the Arduino wire library.

Aside from the improved shield compatibility of Galileo Gen 2, it has upgraded the input power range from 7V to 15V instead of just 5V, upgraded resolution of digital pins with PWM, and provides optional 12V PoE support.

Note

In this book, we will use Galileo Gen 2.

Now that you are familiar with the parts and features of Galileo, you will learn how to set up the development environment.

Setting up the development environment

Note that you should not use the same power supply for Galileo Board Gen 1 and Gen 2. Gen 1 is only rated at 3.3V to 5V, while Gen 2 boards are powered up with a voltage between 7V and 15V. Using the Gen 2 power supply on Gen 1 boards will cause permanent damage to the Gen 1 boards.

Let's get started with setting up the development environment. You need to perform the following steps:

  1. First, connect the Galileo DC jack to power up your board. You will see the LEDs light up. Then, connect your Galileo board to your computer through the USB client port. Look at the picture here for the connection reference:
    Setting up the development environment
  2. Next, download the Galileo development environment. It is a custom version of the usual Arduino IDE developed by Intel. You may download the IDE at the following link:

    https://communities.intel.com/docs/DOC-22226

  3. Install the downloaded software in your computer and launch the application.
  4. Before proceeding, ensure that the latest firmware is installed. To update the firmware, follow these steps:
    1. Navigate to Help | Firmware Update. You will need to wait for a bit, as this takes several minutes.
    2. Now, load the Blink example in the IDE by navigating to Examples | Basics | Blink.
  5. The Blink code will load and you will end up with the editor window shown in the following screenshot:
    Setting up the development environment
  6. Click on Upload to load the program.
  7. The LED will blink on the board.

That's how easy navigation is on the Galileo interface!

If your LED light does not blink, check the following:

  1. Confirm that you have the latest Galileo IDE loaded.
  2. Ensure that the latest firmware is installed.
  3. Check the version of the board that has been selected by navigating to the board in Tools | Board.
  4. Ensure that there are no loose cable connections.

Summary

In this chapter, you learned what the Arduino platform is, how it came to be, what it is for, where it is used, and its commercially available versions. Most of all, we found out about one of the latest boards of the Arduino platform and the first to use the Intel microprocessor: the Intel Galileo board.

We know that there are two current versions of Intel Galileo: Gen 1 and Gen 2. We will focus on Galileo Gen 2 in this book, but Gen 1 will work as well for all the projects of the book. You also learned how to set up the development environment for Intel Galileo and how to update its firmware.

We are just starting to explore the first ever Arduino board to run on an Intel microprocessor and we are just barely scratching the surface. You have so much more to discover and learn!

In the following chapters, you will learn more of Galileo's basic and core functions. You will study structure, variables, and functions of Gen 2. We will explore digital, analog, and communication applications by creating our own DIY projects. We'll also start with the weather measurement and data logging station project in the next chapter.

You have been reading a chapter from
Intel Galileo Blueprints
Published in: Jun 2015
Publisher:
ISBN-13: 9781785281426
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image