Skip to main content

Intel Galileo2 vs. Raspberry Pi2

As a follow-up to a previous article about the Intel Galileo and the Raspberry Pi (RPi), the discussion has evolved to a comparison between the second generations of both boards. Both have been greatly improved, yet neither has been drastically changed such that a migration to this next generation is too difficult.

As a simple hardware comparison, it’s not really fair to compare an RPi to a Galileo, since the choice should be based upon the goal of the project. Here we compare, in detail, the similarities and differences so that an informed decision can be made prior to purchase. See tables 1 – 6 below.

Both Galileo 2 and RPi 2 are Single Board Computers (SBCs), which means they can operate like a computer operating on a single board. For example, instead of using a full-featured computer for a server, you can just use an SBC. There are many other affordable SBCs available today, including the BeagleBoardEdisonMinnowboard MAXWandboard, and others. Raspberry Pi is best for handling media such as photos or video. RPi could be used as a networked security camera or a media server, but for applications that use analog sensors, not so much; without an analog-to-digital converter (ADC), the analog sensors would not be easy to implement. Galileo supports analog inputs with an ADC. Galileo also has wireless connectivity and can be used for IoT applications using the Yocto Linux operating system provided by Intel or Windows 10 from Microsoft. Microsoft seems to think that several boards are also suitable for IoT, since Win 10 IoT Core supports RPi 2, Galileo, and the MinnowBoard Max. Galileo can also function as an inexpensive personal computer running Linux if you’re willing to build the Linux image.

Both Gen 2 boards are do-it-yourself (DIY) electronics hardware development boards featuring embedded processors. RPi 2 Model B replaces the RPi 1 Model B and B+. However, no RPi can be reproduced freely, as there is a copyright on the schematics. Manufacturing of the RPi boards are limited to a few licensees. Intel Galileo 2 is Arduino-certified and impressively documented and supported by Intel. The Galileo boards are true open source hardware (OSHW) products, which means all design files are provided for the convenience of others to modify, redistribute, and even sell, since the Galileo is licensed under the Creative Commons Attribution Share-Alike License. Original products manufactured from the supplier are protected by appropriate trademarks. Thus, users have a means to guarantee that they are getting the real thing since the trademark can only be legally placed on the maker’s original products. None of the RPi products are OSHW, although open source software is prolific for the RPi.

Intel Galileo2 vs. Raspberry Pi2 Figure 1

Figure 1: The Intel Galileo Generation 2. Image courtesy of Intel.

Major Changes for the Galileo

The Galileo 2 board still sports a 400MHz Pentium-class System-on-a-Chip (SoC) called “Quark”. The Galileo 2 was made by Intel in cooperation with Arduino. (Galileo 2 is also compatible with existing Arduino shields that fit the Arduino Uno R3.) Tables 1 through 4 below list hardware attributes for both boards.

  • New power options:
  • An on-board voltage regulator allows use of a power supply ranging from 7 to 15 VDC, allowing for more choices in AC/DC converters with which to power the Galileo 2.
  • An Ethernet connection on the Galileo 2 accepts power-over-Ethernet (PoE) with the addition of a PoE module.
  • The Galileo 2 can be powered from the VIN pin on a shield, as long as it’s in the 7 – 15VDC range.
  • Native GPIO: Twelve of the General Purpose I/O (GPIO) are fully native (directly connected to the processor) resulting in greater speed (fastGpio) and stronger drive performance compared to the Galileo 1. The pinout is still Arduino UNO Rev 3 (or “1.0 pinout”) compatible.
  • Faster ADC: The Analog-to-Digital converter is about 4 times faster than that of the Galileo 1.
  • Finer PWM control: A 12-bit pulse width modulation (PWM) output is available for more precise/fine grained control, which is especially good if you want to control servo motors.
  • UARTs available for sketches: UART1 can be used as a Linux console or as an additional UART for Arduino shields/sketches (the latter also uses Pins 2 & 3, however.) The 3.5 mm jack on Galileo 1 has been replaced by a 6-pin 3.3v TTL UART header (which allows communication with the Linux serial console) that is compatible with FTDI’s 1.8 meter long USB-to-Serial cable (Mouser PN 895-TTL-232R-3V3). The FT232R on the cable makes it a virtual COM port (USB driver can be found on ftdichip.com.) Digital pins 0 and 1 are used as a programmable speed UART serial port.
  • Full sized USB port: The USB Host now has a full sized, standard A type receptacle.
  • Increase in physical size: The length has increased to 123.8 mm (L) × 72.0 mm (W); about 25% larger than Galileo 1.
  • Software: Although an OS comes pre-installed, you can obtain a more powerful version of Linux in the Yocto 1.4 Poky Linux release. Intel provides an operating system (OS) pre-configured for Internet of Things (IoT) applications for Galileo 2. Windows 10 (for IoT) also runs on any Intel Galileo.
Intel Galileo2 vs. Raspberry Pi2 Figure 2

Figure 2: The FT232R in the TTL-232R-3V3 cable appears as a virtual COM port (VCP). The cable provides a fast, simple way to connect devices with a TTL level serial interface to USB. For Galileo, this creates an RS-232 console port for Linux debugging. Image courtesy the FTDI TTL-232R datasheet.

Major changes for Raspberry Pi

Processor: RPi 2’s new ARM Cortex A7 processor has 4 cores, and the clock has increased to 900MHz from the previous 700MHz.

Memory: RPi 2 has 1 GB of RAM. The RAM chip has moved to the bottom of the board.

Operating System: Now supported by an RPi-compatible version of Windows 10 at no charge.

LEDs: Two on-board networking status LEDs have moved into the network jack. The remaining 2 LEDs are now controllable from software.

Intel Galileo2 vs. Raspberry Pi2 Figure 3

Figure 3: The Raspberry Pi Generation 2, Model B. Image courtesy Wikipedia.

Most notably, the newest Raspberry Pi 2 has nearly the same physical form as the RPi 1 Model B+. Enclosures should be interchangeable, but a few might have difficulty with thickness, since RPi’s RAM chip moved to the bottom of the board and some other chips have moved slightly. Mounting holes are in the same place and the connectors are all the same size and located in the same place.

The Galileo 2 costs almost twice as much as the RPi 2, but the RPi still arrives bare bones. New users will need to program the board and will also need a USB power supply (at least 700mA at 5V) and an SD card with boot code installed, a KeyboardMouse, and HDMI-to-DVI cable (for a monitor). The informed RPi user will want a powered USB Hub (for parking additional power-hungry USB devices.) The RPi is not fussy; an old analog TV can be a monitor via the RCA port instead of using HDMI, but it needs a standard RCA cable. On the other hand, Galileo comes with a power supply. The Galileo can boot from SD card or on-board memory.

Both the RPi and Galileo can be operated as stand-alone computers, albeit with obvious limitations (e.g., a 400MHz CPU speed.) Intel built the Galileo with the input and guidance of Arduino. Arduino has built a reputation on making accessible and affordable hardware, with an emphasis on education and open source projects. With their reputation for quality and power, and Arduino’s guidance, Intel managed to strike a balance between these sometime divergent ideals.

The Quark is an x86 Pentium processor, and historically the majority of x86 SoCs are implemented in personal computers. (Hint: Set compilers to .586 for Quark x1000.) Intel supports “The Internet of Things” (IoT), a concept in which things (objects, animals, or people) have unique embedded identifiers for automatically communicating (over the internet) with other things (machines, computers, or objects) without direct human intervention, to automatically transfer data for the purpose of self-regulation, or for acting in concert on a grand scale. IoT could result in huge collections of data and potentially great energy, cost, and time savings with efficiencies gained from every aspect of the interaction of “smart” things. One example is in assisting scientists in exact replication of experiments. Charles Facchia, a biologist-hacker and IBM PhD Fellow at the MIT Media Labexplained it at SXSW for Hackaday that it can be used to “quantify context.” Evidently, many experiments have results that others are unable to replicate. A data collection device placed in a carry-along “rider” test tube, for example, would be able to record the exact environmental status of all of the test tubes in the same carrier if it is treated exactly like all the other test tubes. The IoT test tube could keep track of several variables like temperature, humidity, exposure to light, etc. so scientists can better attempt to repeat experiments with more precise control over potentially contributing or unknown factors. The Galileo is too large to fit into a test tube, but the Galileo is a development board. Once the board requirements are worked out and tested, all or portions of the open source Galileo board can be freely re-spun onto a smaller form factor. (The Intel Quark SoC on the Galileo has package dimensions of 15mm x 15mm.) This is just one potential example of IoT and might help explain why technologists are so excited about IoT.

The Galileo has some differentiating attributes such as PCI Express (PCIe) and a Real Time Clock (RTC), whereas the RPi has peripherals well-suited for graphics-intensive applications for HD 1080p streaming video. Galileo is a memory-rich, fairly high-performance 32-bit x86 with traits well-suited to embedded portables or wearable devices: small in size (highly integrated), low power, and fairly low cost with respect to the value that is packed into the SoC. Some major differences: RPi has a Graphics Processing Unit (GPU.) Galileo does not. Galileo could be applied in remote monitoring, but without a CAN bus, Galileo cannot interface easily with some industrial networks. However, WiFi is available with an adapter on the PCIe slot.

Printer

Galileo 2 runs the 400MHz Pentium-class Quark. RPi 2’s new ARM Cortex A7 processor has 4 cores, and speed has increased to 900MHz from the previous 700MHz. See the tables below for detailed comparisons of the specifications for each board.

The Major Differences

The Major Differences

Both Galileo and RPi are excellent boards, and they both have the most important feature of all: an established ecosystem. Mouser Electronics (www.mouser.com) offers the Galileo 2, and many of the products mentioned in this article. Intel uses the Arduino certified Galileo board to deliver the x86 architecture on an embedded platform. It’s clear that Intel is taking OSHW seriously, and this can only be a good thing. We have seen more open source hardware from Intel in IoT, such as the Intel Edison, and we are likely to see more. The best way to compare is side-by-side. Several tables provide important criteria that can make or break the decision to move forward with either of these boards.

Conclusion

The Arduino-based Galileo 2 has virtually unlimited expansion capabilities with Arduino Shields, including adding wireless connectivity such as WiFi, Bluetooth, and satellite messaging. Shields can also add application expansion capabilities such as motor control shields, LCD displays, and robot controllers. The Arduino ecosystem is constantly expanding and new shields are constantly being added all the time.

As more and more serious SBC applications require and demand code security, the Galileo's board-soldered program Flash is preferable to the Raspberry Pi's easily removable microSD card. Serious single board computers also need JTAG for programming and advanced debugging and the Galileo 2 has it. For precision processing and control-oriented applications the Galileo has a 6-input 12-bit ADC, and I/O pins that can source or sink 16mA @ 5V. The Galileo 2 also has two full UARTs, crucial interfaces for SBC development and applications.

The Galileo 2 hardware capabilities targets single board computer applications. The Galileo 2 runs Windows 10, Linux, and operating systems for applications such as a custom IoT OS.

While both boards have their pros and cons, for serious SBC embedded applications the Galileo 2 is the clear winner.

Table 1: Comparison of Processors & on-Board Features

*DSI – Display Serial Interface


 

Table 2: General Purpose I/O

  Galileo 2 Raspberry Pi 2 Model B
Board Dimensions 123.8 mm (L) × 72.0 mm (W).USB connectors, RJ45 jack, and power jack slightly extend beyond these dimensions. Larger than Galileo Gen 1. 85.60mm x 56mm x 21mm (with a little overlap for SD card )Same size as RPi 1, Model B, with same 4 mounting hole sizes & locations.
Processor Intel® Quark X1000 – single core BCM2836 (ARMv7) - Quad Core
Description of Processor Quark, described by Intel at IDF2013, is very low power consumption, small form factor, and low cost; ideal for “wearables,” and the Internet of Things†. BCM2836 is a power efficient, full HD, multimedia applications processor for media playback, imaging, camcorder, streaming media, graphics and 3D gaming.
Architecture Intel ® Pentium® Class ARM® Cortex-A7 ARM1176JZ-F
Speed 400MHz 900MHz
Width, Instruction Set 32-bit 32-bit
Real Time Clock Yes, needs a 3.3v coin cell No
Cache 16 KB L1 cache Dedicated 512 KB CPU cache
RAM 512KB on-chip SRAM & 256MB DRAM 1GB LPDDR2 SDRAM
FLASH memory 8MB NOR Flash for FW bootloader & sketch storage No permanent on-board Flash memory.
EEPROM 11KB No, but Pi 2 easily accommodates an external EEPROM.
GPU No Broadcom Dual Core VideoCore IV® Multimedia Co-Processor
External Storage Micro-SD Card (up to 32GB), & support for an external USB2.0 drive Micro-SD-card, & support for an external USB2.0 drive
Video Support No HDMI w/HDPC at 1080p60-Full HD 3.5mm composite video (and audio) jack DSI* – for touchscreens
Audio Support No, but you can use the USB port for audio applications with the ALSA library (Advanced Linux Sound Architecture) HDMI 3.5mm jack - stereo
Status Indication 5 LEDs labelled: OC, USB, L, ON, SD Only 2 on-board LEDs - for power (red) and ACT (green) that are both controllable via SW. Networking LEDs are in the network jack.
JTAG 10-pin, Mini-JTAG header, to be used with an in-circuit debugger such as Open OCD and the 909-ARM-USB-OCD with the Olimex JTAG adapter: 909-ARM-JTAG-20-10See reference manual for more information. Unknown. Might support OpenOCD for Cortex-A7.
Compatibility Arduino Shields that fit the Arduino Uno R3 3.3V / 5V shields Arduino board connects via USB. 3rd party boards enable support for Arduino shields with Pi.
  Galileo 2 Raspberry Pi 2 Model B
Analog I/O Up to 6 Analog Inputs with 10- or 12-bit (programmable) resolution. A0 – A5 can be used as Digital I/O using functions and operate at 3.3V or 5V. Each pin sources or sinks 16mA @ 5v or 8mA @3.3v 26 general purpose I/O (GPIO) pins (access to I2C, UART, and SPI) on a 40-pin header. Analog input using an ADC must be an additional purchase of an external companion board. GPIO 14 & 15 are assigned to function as UART but may be configured as GPIO.
Digital I/O 14 Digital I/O that can be used as input or output and operate at 3.3V or 5V. Each pin sources or sinks 16mA @ 5v or 8mA @3.3v Identical to RPi B+. Up to 17 GPIO pins that can be programmed as Digital Input or Output.
PWM Up to 6 of the DI/O can be configured as 8- or 12-bit Pulse Width modulation (PWM). Programmable resolution. Two pins at a time may be set up as PWM. One is shared with audio.
 

Table 3: Comparison of Peripherals/Utilities

  Galileo 2 Raspberry Pi 2 Model B
USB 2.0 2 ports: Native USB 2.0 Host (standard Type A) & USB 2.0 Client (micro-USB Type B.) 3rd USB Host available over mPCIe. 4 USB ports. Managed by the LAN9514 USB/Ethernet controller.
Ethernet (RJ45) 10/100 Mbps with a dedicated PHY for Ethernet control. One RJ45 port. Does not require use of SPI. Power over Ethernet capable. 10/100 Mbps Ethernet via RJ45 port. Managed by the LAN9514 USB/Ethernet controller
Wi-Fi No. Can use the PCIe slot or a USB port with a USB adapter to obtain WiFi. Intel® Centrino® Advanced-N is recommended. No. Can support WiFi with a USB adapter, using one USB port.
SD Card Slot Yes, a micro SD slot. Includes an on-board dedicated SD controller. Does not require use of SPI. Can boot from microSD card (max 32 GB.) See Intel Galileo Software and Downloads for a Linux image. Micro SD slot, min 4GB, class 4 or higher. RPi must boot from a portion of the SD card.
PCIe Yes, PCI Express mini slot. This enables WiFi, SD card, USB Host, Bluetooth, or GSM (cellular phone technology.) No
Two Wire Interface (TWI) / I2C Yes. (I/O: SDA and SCL) / 1-I2C master Yes
SPI Yes. SPI header. Native controller. Additional Slave SPI available only through via a USB Client connector. Yes
Serial Data (UART TTL) UART Yes. UART TTL (5V/3.3V) serial data on digital pin 0 (Rx) and 1(Tx). Also a 6-pin console UART (which allows communication to the Linux serial console) is compatible with FTDI USB-to-Serial cable Mouser PN 895-TTL-232R-3V3. Driver can be found on ftdichip.com Yes. GPIO 14 & 15 are assigned to function as UART but may be configured as GPIO.
GPIO 20 digital input/output pins (of which 6 can be used as PWM outputs with 8/12-bits of resolution and 6 as analog inputs with 12 bits of resolution.) 26 GPIO pins. Input voltage limited to 3.3v only. 40 pin header GPIO interface
PWM NXP PCA9685 16-channel PWM driver IC with 12-bit resolution Two pins at a time may be set up as PWM. One is shared with audio.
Reset button Two. One resets sketches, shield, and Ethernet. The other reboots the processor. Two reset pins.
DSI (Digital Serial Interface) No Yes
CSI (Camera Interface) No Yes
CAN Bus No No
GPU No Yes
EEPROM Yes. 11KB. No
DVI No No. Can use an adapter cable from HDMI.
VGA No No
On-board ADC Yes. One Texas Instruments ADS108S102. No
Clock Internal. Pins for an external clock, too. On-board RTC. No on-board RTC.
Camera No Header only. Expansion accessory required. A separate RPi Camera board exists.
 

Table 4: Board Requirements

  Galileo 2 Raspberry Pi 2 Model B
DC Power Supply (VIN) Included (12V brick) AC/DC adapter with a 2.1mm center-positive plug/jack. Tolerant of 7 to 15 V power supply. Can also be powered via the VIN pin on the Arduino shield header. PoE capable with PoE module. Not included. Micro USB-plug charger providing 5VDC and 0.7A (min) or up to 2A (max) if you plan to use accessories.
Ethernet cable Cat5e/Cat6; not included. Cat5e/Cat6; not included.
USB 2.0 type A/B-micro cable Not Included. Micro USB cable must be purchased separately. Not included. Micro USB cable must be purchased separately.
SD Card MicroSD Card. Not required. Not included. MicroSD card: 8MB, Class 10 or better is required if you are running Win 10. Not included.
Powered USB Hub If you require >2A for peripherals powered via Galileo. Recommended to power any USB peripherals that would take RPi current draw above 1A.
 

Table 5: Comparison of Software and Development Tools

  Galileo 2 Raspberry Pi 2 Model B
Operating System(s) for the Target Yocto 1.4 Poky Linux distribution. Arduino Linux Distribution for Galileo. Windows 10. ARM7 compatible Linux Win 10 (few compatible applications to run on an ARM7 as it is new.) Android.
Integrated Development Environment (IDE) The Arduino IDE. Galileo can run x86-based Linux distros without Arduino, so IDEs for Linux also qualify. Python IDE, e.g. WebIDE. ARM compilers, etc. Many choices.
Supported Host-resident Operating Systems (System Console) Windows 7 (32-&64-b) and Win 8, Ubuntu 12.04 Linux (32- and 64-bit), Mac OS X 10.10 and up. Can boot Galileo without a host. Linux. RPi is a single board computer and doesn’t really need a host, just bootable code.
Example Software Yes, Arduino Sketches. http://arduino.cc/en/ArduinoCertified/IntelGalileo
Intel Galileo Maker Projects.
Yes: www.raspberrypi.org
Programming languages Arduino software. Linux kernel requests with system () calls are possible. Programming languages that support .586 GCC and ICC compilers are supported. Python, C, C++, Java, Scratch, Ruby. Any language that compiles for ARMv7.
Drivers Yes, existing Arduino Libraries: SPI, EEPROM, UART, GPIO, Wi-Fi, Servo, USB Host Python, C, C++, Java, Scratch, Ruby. Any language that compiles for ARMv7.
Boots from: On-board firmware or SD card. microSD card with bootcode image.
 

Table 6: Applications

Application Space Technology Galileo 2 Raspberry Pi 2 Model B
Multimedia: Video No Yes
  Audio No Yes
  Camera No Yes, with purchase of an RPi camera module.
Industrial/ Automotive CAN Bus No No
  LIN Bus No No
Networking: Wi-Fi Yes, via PCIe or via USB with an adapter. Can support Wi-Fi with a USB adapter, using one USB port.
  Ethernet 10/100. Dedicated PHY. 10/100.
Tablets/Smartphones: DSI interface No. The USB Host port allows Galileo to act as a USB Host for connected smartphones. Yes
Connectivity: USB 2.0 1 Native Host port
1 Native Client port
Yes, Four USB ports
  Arduino Shields Yes, direct connection. Yes, with separately purchased Arduino Uno or accessory boards.
  Additional Boards & accessories All Arduino shields compatible with Arduino UNO Rev 3 Yes. RPi camera, and others.
Storage: SD card Micro SD Micro SD
 
 
  •  

About the Author

Lynnette Reese holds a B.S.E.E from Louisiana State University in Baton Rouge. Lynnette has worked at Mouser Electronics, Texas Instruments, Freescale (now NXP), and Cypress Semiconductor. Lynnette has three kids and occasionally runs benign experiments on them. She is currently saving for the kids’ college and eventual therapy once they find out that cauliflower isn’t a rare albino broccoli (and other white lies.)