Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Internet of things with Intel Galileo
Internet of things with Intel Galileo

Internet of things with Intel Galileo: Employ the Intel Galileo board to design a world of smarter technology for your home

eBook
€17.98 €19.99
Paperback
€24.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing
Table of content icon View table of contents Preview book icon Preview Book

Internet of things with Intel Galileo

Chapter 1. Introducing Galileo

The Internet of Things (IoT) is a hot topic nowadays. It is a vision where everyday objects are connected, and share data over the Internet. It is believed that it will have a huge impact in our lives by changing the way we interact with the things that are present in our daily lives.

In this context, many development boards have been developed for the makers' community over the last few years. Most of them required some of the essential components to be bought separately, such as the Ethernet socket. Intel offered a different solution packing the most common components together onboard and putting the Arduino and Linux worlds together, all in one board—the Galileo.

In this chapter, you will be able to understand what the concept of the Internet of Things is, what a Thing is, and how Galileo may help you develop your Things.

In this chapter, we'll be covering the following topics:

  • The Internet of Things vision
  • Galileo board and its components
  • Galileo Gen 2
  • Popular boards comparison

The Internet of Things vision

The Internet of Things concept is neither entirely new nor is a futuristic distant technology. It is being built today with today's technology, and you can find it in some of your own home devices, big data clouds, and sensors. It started with wireless technologies converging progressively with micro-electromechanical systems (MEMS) and the Internet.

The initial concept suggested that it were the persons who should share the data. Today, it can be defined as a network of sensing and actuating devices with the ability to share information.

The first time the term "Internet of Things" was officially used in a publication back in 1999, where Kevin Ashton published his vision in the RFID Journal:

You can't eat bits, burn them to stay warm or put them in your gas tank. Ideas and information are important, but things matter much more. Yet today's information technology is so dependent on data originated by people that our computers know more about ideas than things. If we had computers that knew everything there was to know about things—using data they gathered without any help from us—we would be able to track and count everything, and greatly reduce waste, loss and cost. We would know when things needed replacing, repairing or recalling, and whether they were fresh or past their best. The Internet of Things has the potential to change the world, just as the Internet did. Maybe even more so.

As you can see, devices sharing data is the real concept behind IoT. Such devices could either be living or inanimate. A Thing in the IoT context can be a person wearing a pulse monitor, a dog carrying a tracking device, a garbage bin that notifies it needs to be emptied, or a thermostat that adjust itself automatically to help you lower your electricity bills.

IoT assumes that Things must be uniquely identifiable and able to gather data recurring to sensors. They must also have the ability to communicate and transfer data over a network. Such data could be used for monitoring purposes, big data processing, or even to control that same Thing.

Things supporting this machine-to-machine communication are usually known as smart devices. An example of a smart device is the famous Google Nest thermostat (https://nest.com/thermostat). Being more than a simple thermostat, it shares its usage data to help you save on your home's energy, while keeping you cozy. It can also work together with other smart devices such as some Mercedes-Benz cars (https://nest.com/works-with-nest/). The car GPS system shares data with the Nest cloud, making it possible to start heating or cooling your home, based on the expected arrival time.

Introducing Intel Galileo

Intel® Galileo is a development board based on Intel x86 architecture; it was designed mostly for makers and complies with open source software and hardware licenses. If you are familiar with the Arduino boards, you'll find this board somewhat similar; the reason being this board was designed to be hardware and software compatible with the Arduino shield ecosystem. It combines Intel technology with support for Arduino shields and libraries. It is even possible to write code using the same Arduino development environment.

The expansion header is similar to the Arduino ones. It has 14 digital I/O pins (where six of them can be used as PWM), six analog inputs, a serial port, and an ICSP header. It supports shields operating at either 3.3 V or 5 V. A jumper on the board enables voltage translation at the I/O pins from 5 V to 3.3 V, and vice versa, providing compatibility with the Arduino shields.

Galileo runs over a very light open source Linux OS in its 8 MB flash memory. However, do take into consideration that Arduino is being emulated using Linux, and your code will be running in a separate process.

This board includes a 10/100 Ethernet connector port, and if you wish to use Wi-Fi, you can add a card to the Mini PCIe socket on the back side of the board.

Introducing Intel Galileo

The Galileo Gen 1 board and its components

Breaking down the board, you can find the following major components:

  1. I2C jumper: This jumper allows you to change the I2C address of some on-board components. You may need to do this if you are using I2C components that conflict with other components on the board.
  2. Ethernet port: This port allows you to connect your board to a wired network, allowing you to communicate with other devices and also access the Internet. If you wish to use Wi-Fi, in the backside of the board, you'll find a Mini PCI Express slot where you can connect your Wi-Fi card. It also enables another possible storage device, USB host, bluetooth, or GSM card.
  3. Serial port: There is a serial port for connecting to the Galileo Linux command line from your computer. Although this port looks like an audio jack, it is only used for serial communication.
  4. USB client: When developing with the Arduino IDE, you'll need to connect your USB cable here, so that you can upload your project's code on the board.
  5. USB host: Do not mistake this port for the USB client. This one is not intended to be used to upload your project's code, but to allow you to connect more peripheral devices, such as webcams and extra storage.
  6. Flash memory: This type of memory is persistent and it is where the board firmware is stored, taking most of the available 8 MB of space.
  7. Random Access Memory (RAM): This is where your sketches are stored while running. Galileo has 512 KB of in-built SRAM and an additional 256 MB of external DRAM. Since it is a volatile type of memory, when you reboot your board, your sketch will be lost. If you wish to keep it persistent, you'll need to save it to a microSD card.
  8. Arduino expansion header: It has 14 digital I/O pins (IO2-IO13, TX, RX); all of them can be used as input or output and six of them can be used as Pulse Width Modulation (PWM) outputs. The RX and TX pins control the programmable speed UART port. At the bottom-right side of the expansion header, you'll find six available analog pins with a 12-bit resolution. The pins at the bottom -left of the board are power pins (IOREF, VIN, RESET, 3.3 V, 5 V, and 2 GND).
  9. VIN jumper: This jumper connects the Galileo VIN pin to the 5 V regulator. When using shields that require more voltage than this, you must pull out this jumper to avoid damaging the board.
  10. IOREF jumper: In order to support 3.3 V shields, you can use this jumper to change your board voltage level from 5 V to 3.3 V.
  11. Reboot button: This button reboots the board, including the OS.
  12. Intel Quark SoC X1000 Application Processor: This is the board's processor; it is responsible for processing your code. It is a 32-bit, single core, single-thread, Pentium (P54C/i586) instruction set architecture (ISA)-compatible CPU. It is capable of operating at speeds up to 400 MHz.
  13. Clock battery power: With this inclusion, you won't need to get the date and time from the Internet every time you reboot your board. By connecting a 3 V coin cell battery to the board, you'll be able to keep track of time, even when the board is powered off.
  14. On board LED: This is an on-board LED, directly connected to the pin 13. You can use it to test and run basic sketches.
  15. JTAG header: This is used to debug boards. It should be used with an in-circuit debugger.
  16. Reset button: Pressing this button will restart your code and send the reset signal to the connected shields. It won't restart the OS.
  17. MicroSD card slot: You'll definitely need more space to store your sketches or other apps. Here, you can insert your microSD card and store your persistent sketches or even use it to boot an operating system instead of the on-board one. You'll need to do this if you want additional functionalities, such as Wi-Fi, since those drivers can't fit in the 8 MB of the board's flash memory. It can be done using a card up to 32 GB.
  18. Power input: This is where you must connect your power adapter. The 5 V, 2A feed is the only official way to power the board. Intel recommends you power the board through its power supply before connecting it via USB to your computer, otherwise, you might damage your board.

As you can see, this board is more suitable to work with sensors. The Arduino shield compatibility, familiar IDE, real-time clock and, possibility of using the PCI express connector are some of its best features.

Galileo Gen 2

Many makers found the 400 MHz processor a bit slow for their projects, mostly because of Arduino being emulated with Linux. Intel addressed the community issues, made some changes to the original board, and presented a new one named Galileo Gen 2.

Galileo Gen 2 is still powered by the same processor, but its performance has been considerably increased. The Arduino shields compatibility has also been improved with 12 GPIOs, now made fully native by being connected directly to the Quark X1000 SoC, and 12-bit PWM resolution allowing faster and smoother responses.

This board is a bit bigger than the original one, and the 3.5 mm serial port jack has been replaced by a six-pin 3.3 V USB TTL UART header, now making it compatible with the standard FTDI to USB serial cable. Also, the USB host port was replaced with a full size Type A receptacle 2.0 USB port.

The power regulation system has been changed to accept power supplies from 7 V to 15 V. The power supply jack isn't the only powering option available; it is now possible to power this board through the Ethernet cable by connecting it to a Power over Ethernet (PoE)-enabled Ethernet switch. It is also possible to power it from a connected shield, as long as the input voltage applied to the Galileo's VIN pin is in the 7 V – 15 V range:

Galileo Gen 2

Intel Galileo Gen 2 board

For the demos in this book, you can either use Galileo or Galileo Gen 2. The projects will run on both.

A comparison of Galileo with the most popular boards

Along with Galileo, Raspberry Pi and Arduino Yún are very popular boards among makers. All of them are Linux-embedded and have open source hardware design.

The following is a table with some features of each board:

Features

Intel Galileo

Arduino Yún

Raspberry Pi model B

CPU speed

400 Mhz

400 Mhz

700 Mhz

Memory

256 MB

64 MB (AR9331) and 2.5 KB (ATmega)

512 MB

Internal storage

8 MB

16 MB (AR9331) and 32 KB (ATmega)

-

External storage

MicroSD

MicroSD

SD card

Networking

Ethernet and Wi-Fi (Wi-Fi adapter is bought separately)

Ethernet and Wi-Fi

Ethernet and Wi-Fi (Wi-Fi dongle is bought separately)

Video output

-

-

HDMI and 1080p composite RCA

Audio output

-

-

HDMI and 3.5 mm audio jack

Digital I/O pins

14 at 3.3 V or 5 V

20 at 5 V

17 at 3.3 V

Analog input

6 (12-bit ADC)

12 (10-bit ADC)

-

PWM output

6

7

1

Real-time clock

Optional

-

-

SPI

1

1

2

I2C

1

1

1

Here's the brief comparison of the boards:

  • Arduino Yún: At first glance, we can say that Yún and Galileo have more in common than with the Raspberry Pi. The number of available PWM, analog and digital pins make them good boards for projects with sensors. Arduino Yún is compatible with most Arduino Leonardo shields. Although Galileo shares a look alike development environment and board setup, not all the shields are compatible because some of the Arduino libraries are heavily bound to the Arduino architecture. Galileo runs a custom Yocto-based Linux in its 8 MB SPI flash by default. To be able to install stronger tools, it requires to be booted from a microSD card image provided by Intel. Yún runs an OpenWrt distribution, and has 16 MB of space available for the entire operating system. It is not possible to boot load from the microSD card, but is possible to increase its disk space by plugging in a microSD card and configuring it to become the new Linux file system. An advantage of Yún is that it already brings Wi-Fi on its board. Galileo requires connecting a Wi-Fi adapter.
  • Raspberry Pi: Raspberry Pi, the board with the biggest community, is the only board in our table that has video and audio output, making it more interesting for multimedia projects. However, the lack of analog inputs makes this board less interesting to work with analog sensors.

Galileo is compatible with Arduino in the way that it can run 3.3 and 5 V shields, but it has some restrictions because of the Arduino's AVR libraries dependencies. Before buying a shield, you should check whether it is supported by Galileo.

Some of the advantages of the Galileo board when compared to the mentioned ones are the possibilities of working with PCI Express mini cards and using a real-time clock. Besides these, Galileo comes fully ready to work with sensors; this makes it an interesting tool for data collection.

Like the Raspberry Pi, the possibility of booting from a stronger Linux image makes it possible for projects developed in some of the most popular languages such as Python or Node.js (Javascript).

Summary

Galileo is a good option if you have a project requiring sensors, monitoring, or device control. It is an interesting board to develop ambitious projects in the scope of the Internet of Things, where you can develop your unique Things and make them share data with each other.

In this chapter, you've learned about the IoT concept, your board components, and where you should connect what. By now, you may already be able to imagine what you are able to use and connect to your board.

In the next chapter, you'll get familiar with the Arduino development environment, learning how you can develop code and run it in your Galileo.

Left arrow icon Right arrow icon

Description

This book employs an incremental, step-by-step approach to get you familiarized with everything from the basic terms, board components, and development environments to developing real projects. Each project will demonstrate how to use specific board components and tools. Both Galileo and Galileo Gen 2 are covered in this book.

Who is this book for?

This book employs an incremental, step-by-step approach to get you familiarized with everything from the basic terms, board components, and development environments to developing real projects. Each project will demonstrate how to use specific board components and tools. Both Galileo and Galileo Gen 2 are covered in this book.

What you will learn

  • Understand the concept of the Internet of Things
  • Wire and power a Galileo board safely
  • Develop code using the Arduino IDE, Intel IoT Dev Kit, and Intel XDK environments
  • Build and start a Galileo board from a bootable image
  • Use the Internet to feed, control, and gather data from sensors
  • Create connected modules
  • Combine multiple sensors to build complex projects

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Jul 29, 2015
Length: 212 pages
Edition : 1st
Language : English
ISBN-13 : 9781782174585
Vendor :
Intel
Category :
Tools :

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing

Product Details

Publication date : Jul 29, 2015
Length: 212 pages
Edition : 1st
Language : English
ISBN-13 : 9781782174585
Vendor :
Intel
Category :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total 98.97
Intel Galileo Blueprints
€36.99
Intel Galileo Networking Cookbook
€36.99
Internet of things with Intel Galileo
€24.99
Total 98.97 Stars icon

Table of Contents

11 Chapters
1. Introducing Galileo Chevron down icon Chevron up icon
2. Rediscovering the Arduino IDE Chevron down icon Chevron up icon
3. Monitoring the Board Temperature Chevron down icon Chevron up icon
4. Creating a Motion Sensing Light Chevron down icon Chevron up icon
5. Intel IoT Developer Kit Tools Chevron down icon Chevron up icon
6. Building an Irrigation System Chevron down icon Chevron up icon
7. Creating Christmas Light Effects Chevron down icon Chevron up icon
8. The Intel XDK IoT Edition Chevron down icon Chevron up icon
9. Developing an IoT Quiz Chevron down icon Chevron up icon
10. Integrating with Muzzley Chevron down icon Chevron up icon
Index Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Full star icon Full star icon Full star icon 5
(3 Ratings)
5 star 100%
4 star 0%
3 star 0%
2 star 0%
1 star 0%
Arkadiusz Malinowski Aug 23, 2015
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Book „Internet of Things with Intel Galileo” by Miguel de Sousa in my opinion is very good introductory book to the new incoming revolution in semicon industry which is Internet of Things. Book starts with short explanation of the idea standing behind of concept Internet of Things followed by a description of Intel Galileo board and comparison to Raspberry Pi. Next it quickly jumps to hands-on. Following chapters are devoted to setting up board, installing software, and running projects. Projects such as building an irrigation system and Christmas light effects which is quite ok for beginning from my point of view. Descriptions are clear and supported by pictures and screen-shots. Book length is I would say very encouraging to read it. I was always scared and overwhelmed by holding 1000-page bricks in my hand. Definitely I can recommend this book to those ones who want to start their adventure with Internet of Things.
Amazon Verified review Amazon
Eduardo Pinheiro Jul 29, 2015
Full star icon Full star icon Full star icon Full star icon Full star icon 5
This is the kind of books that I love. It's theoretical enough and practical as I like. In then end, I can build things on my own. Loved it!
Amazon Verified review Amazon
Krishnath Poologanathan Oct 08, 2015
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Interesting overall view of the internet of things. Its a very good start and A must read book if you are contemplating a IOT project
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is included in a Packt subscription? Chevron down icon Chevron up icon

A subscription provides you with full access to view all Packt and licnesed content online, this includes exclusive access to Early Access titles. Depending on the tier chosen you can also earn credits and discounts to use for owning content

How can I cancel my subscription? Chevron down icon Chevron up icon

To cancel your subscription with us simply go to the account page - found in the top right of the page or at https://subscription.packtpub.com/my-account/subscription - From here you will see the ‘cancel subscription’ button in the grey box with your subscription information in.

What are credits? Chevron down icon Chevron up icon

Credits can be earned from reading 40 section of any title within the payment cycle - a month starting from the day of subscription payment. You also earn a Credit every month if you subscribe to our annual or 18 month plans. Credits can be used to buy books DRM free, the same way that you would pay for a book. Your credits can be found in the subscription homepage - subscription.packtpub.com - clicking on ‘the my’ library dropdown and selecting ‘credits’.

What happens if an Early Access Course is cancelled? Chevron down icon Chevron up icon

Projects are rarely cancelled, but sometimes it's unavoidable. If an Early Access course is cancelled or excessively delayed, you can exchange your purchase for another course. For further details, please contact us here.

Where can I send feedback about an Early Access title? Chevron down icon Chevron up icon

If you have any feedback about the product you're reading, or Early Access in general, then please fill out a contact form here and we'll make sure the feedback gets to the right team. 

Can I download the code files for Early Access titles? Chevron down icon Chevron up icon

We try to ensure that all books in Early Access have code available to use, download, and fork on GitHub. This helps us be more agile in the development of the book, and helps keep the often changing code base of new versions and new technologies as up to date as possible. Unfortunately, however, there will be rare cases when it is not possible for us to have downloadable code samples available until publication.

When we publish the book, the code files will also be available to download from the Packt website.

How accurate is the publication date? Chevron down icon Chevron up icon

The publication date is as accurate as we can be at any point in the project. Unfortunately, delays can happen. Often those delays are out of our control, such as changes to the technology code base or delays in the tech release. We do our best to give you an accurate estimate of the publication date at any given time, and as more chapters are delivered, the more accurate the delivery date will become.

How will I know when new chapters are ready? Chevron down icon Chevron up icon

We'll let you know every time there has been an update to a course that you've bought in Early Access. You'll get an email to let you know there has been a new chapter, or a change to a previous chapter. The new chapters are automatically added to your account, so you can also check back there any time you're ready and download or read them online.

I am a Packt subscriber, do I get Early Access? Chevron down icon Chevron up icon

Yes, all Early Access content is fully available through your subscription. You will need to have a paid for or active trial subscription in order to access all titles.

How is Early Access delivered? Chevron down icon Chevron up icon

Early Access is currently only available as a PDF or through our online reader. As we make changes or add new chapters, the files in your Packt account will be updated so you can download them again or view them online immediately.

How do I buy Early Access content? Chevron down icon Chevron up icon

Early Access is a way of us getting our content to you quicker, but the method of buying the Early Access course is still the same. Just find the course you want to buy, go through the check-out steps, and you’ll get a confirmation email from us with information and a link to the relevant Early Access courses.

What is Early Access? Chevron down icon Chevron up icon

Keeping up to date with the latest technology is difficult; new versions, new frameworks, new techniques. This feature gives you a head-start to our content, as it's being created. With Early Access you'll receive each chapter as it's written, and get regular updates throughout the product's development, as well as the final course as soon as it's ready.We created Early Access as a means of giving you the information you need, as soon as it's available. As we go through the process of developing a course, 99% of it can be ready but we can't publish until that last 1% falls in to place. Early Access helps to unlock the potential of our content early, to help you start your learning when you need it most. You not only get access to every chapter as it's delivered, edited, and updated, but you'll also get the finalized, DRM-free product to download in any format you want when it's published. As a member of Packt, you'll also be eligible for our exclusive offers, including a free course every day, and discounts on new and popular titles.