The Intel Galileo is a development kit produced by Intel, based around the Intel Quark X1000 SoC. The Quark X1000 is a Pentium-class 32 Bit ‘System On Chip’ device, with intel’s ISA architecture. Lets take a look at it’s features and get to know it a bit.
The board hosts the Quark X1000 SoC, a full sized mini-PCI Express slot, 100Mb Ethernet port, Micro-SD slot, RS-232 serial port, 8 MB SPI flash ram, 512 KB Embedded SRAM and 256 MB DRAM. The Micro-SD Card slot works with SDHC Cards up to 32 GB capacity. There are 2 USB 2.0 Ports, one is a USB Host port, the other a USB Client. The Quark X1000 runs at 400 MHz. There is also a JTAG header and an ICSP header, along with the Arduino UNO compatible pin headers.
The board is 10 CM x 17 CM and comes complete with a Universal 5V Wall-wart style power supply. Since there is 100Mb ethernet on board there’s no need to add an Arduino ethernet shield, and the on board ethernet works with existing Arduino Ethernet sketches. For wireless you can add a mini PCI-Express wifi card. Click on the images for full size versions.
As shipped, out of the box the Galileo runs a tiny linux image which is pre-loaded into it’s SPI Flash Ram. This basic linux image allows the Arduino IDE to upload sketches, which are run natively. If you need more linux features or want to use WiFi you’ll need to download a more complete linux image, burn it to an SD Card and insert it into the Galileo to boot from. Intel provides just such a pre-built linux image here. (LINUX IMAGE FOR SD).
Hobbyists and Professionals
The Galileo is quite an attractive proposition for hobbyists because it is Arduino compatible, can run Arduino sketches and has Arduino compatible headers, complete with choice of 3.3V or 5V by setting a jumper. It’s compatible with a whole bunch of Arduino shields, and can be programmed quickly and easily with the Arduino IDE. The IDE is available for Mac, Windows and Linux.
Importantly, it’s also attractive for professional designers who may not care much for Arduino shields or sketches, but who will be able to make use of the fact that it runs various builds of Linux.
Intel provides two Linux builds for you to use, a ‘tiny’ linux image which is preloaded into the SPI Flash and which enables Arduino Sketch compatibility, and wired ethernet, and a larger fuller linux image which adds wifi compatibility. None of these two images includes any development tools.
Developing for Galileo
In order to develop apps for Galileo you’ll need to either use the Arduino IDE For Galileo which you can download from here, or you will have to build a new linux image, and include the development tools yourself. Then you will be able to write code and build it natively, directly on Galileo. There is a vibrant community hosted by intel for Galileo and various people on there have instructions on how to create your own development build. Probably the best place to start would be to read Sergey’s Blog on doing a standard linux build with dev tools.
Actually, there is a third option for developing for Galileo, and it is based around Intel’s IoT ADT (Internet of Things, Application Development Toolkit). With this you download a special boot image to SD Card for Galileo which includes a debug server and wifi support, and you download a Live USB Image of a Debian Linux environment which includes Eclipse. You boot a PC or Laptop from the USB Stick and develop in Eclipse, and connect to Galileo using a Serial cable for deployment and debugging.