Here at IdentityMine, we recently acquired the Intel Galileo board to play with. Galileo is an awesome board (USB and network ports, microSD slot, 256MB RAM) commonly used for building Arduino-based IoT projects.
Galileo also runs in Windows, which allows for development from Visual Studio and compatibility with the Windows API's. This is a simple step-by-step guide on how to get started. For the TD;DR crowd, the steps are:
- Get the Stuff (a shopping list)
- Set up your PC
- Set up your Galileo
- Install Windows for Devices
- Run Windows on the Galileo board
- Code some things
1. Get The Stuff (Shopping List)
First, we need to get some stuff. The last thing you want to do is sit down to get started and realize you do not have the stuff you need. This can cost from $80-$150, depending on what you already have on hand. Prices below are based on an estimate we made at the time of publication of this blog post.
Galileo Board - $50 - If you do not have a Galileo board, you will need to get one. You can get the "original" Galileo, which is what I am working with. If you can get your hands on the Galileo 2, good for you! It is slightly more expensive but is worth the price.
16GB microSD card - $13 – You will need to boot Windows on your Galileo board, which means you will need to install it on a microSD card that you have formatted for this purpose. 16GB is the minimum size required for this installation. I prefer using the 32GB for an extra $5.
Network-to-USB cable - $12 - You will be installing your apps through a Telnet connection to the Galileo board. If your machine does not have a wired network port (like my Surface 3 or my Macbook), you'll need a network-to-USB cable.
Grove Starter Kit - $56 - I have really enjoyed using the Grove Starter Kit and many of the examples I show will be using it. The Grove kit has a shield (an add-on module) and a set of input-output sensors (including an LCD display). I chose this kit because it is easier and faster than a breadboard, it has lots of great Arduino samples available, and it has been tested for compatibility by the Microsoft IoT team. Many of my samples will use the Grove kit because it is awesome.
Breadboard Kit - $23 - If you do now want to use Grove, you will still need some hardware (breadboard, resistors, sensors,LEDs) to run anything beyond the "Hello World" examples. This breadboard kit has the LEDs, buttons, switches and other input-output devices you need to get started.
2. Getting Your PC Ready
Microsoft has a useful set of articles for getting started and I wanted to provide additional information to ensure the set-up process goes smoothly.
However, you may have run into this "Page Not Found" problem downloading the Windows for IoT tools.
You will also run into this problem when you download the Windows image and the install script. This is because these files are in pre-release and are only visible to accounts that have registered for the IoT pre-release software program. The solution is to go to this site and search for the IoT program and join it.
It is a simple sign-up process and you should be able to run through it quickly.
3. Getting your Galileo Ready
There are two options here:
- You have the Galileo 2 - Do nothing. Go to the next step.
- You have the Galileo 1 - Install the latest drivers and firmware from Intel. Intel has a great walk-through on driver and firmware installation here. You just need to go through step 4. It should take 10-20 minutes.
4. Installing Windows for Devices
The main Microsoft post on installing Windows for use on your Galileo board provides a sufficient set-up guide. Here is an outline of the steps plus additional information.
Before you install Windows onto your microSD card, you need to format it. The pre-installed partition on my microSD card meant I had to use the command prompt to delete the partition and complete the format.
Open up the command prompt as an administrator.
Type "diskpart" to open up the diskpart utility.
Type "list disk" to see which disks are available.
In my case, my 32GB microSD card that I want to use for my Galileo board is "Disk 1". Select it using "select [SD card]". Then use "list disk" to make sure you have the appropriately selected disk (it will be marked with a *).
This should go without saying, but VERIFY THAT YOU HAVE THE RIGHT DISK SELECTED BEFORE you use the "clean" command to remove everything from the disk, then exit diskpart.
With a clean card, open up the Disk Manager.
Right click on your unallocated disc and format it.
You should be ready to run the apply-bootmedia.cmd. Having downloaded apply-bootmedia.cmd and the Galileo image to the same folder (for example, the C:IoT folder), run the following lines:
apply-bootmedia.cmd -destination [microSD card drive] -image [downloaded image] -hostname [name your board] -password [your password]
- your microSD card is the E drive
- your WIM file is "9600.16384.x86fre.winblue_rtm_iotbuild.140815-1515_galileo_v1.wim"
- you want your board to be seen as "mygalileo"
- your password will be "admin"
Then you will type:
apply-bootmedia.cmd -destination E: -image 9600.16384.x86fre.winblue_rtm_iotbuild.140815-1515_galileo_v1.wim -hostname mygalileo -password admin
You should see the install running. Don't let your device go to sleep or you will have to start all over again. It should take between 5 and 15 minutes. At the end, you will see.
5. Running Windows on Galileo
Eject the microSD card and pop it into your Galileo board. Plug in the network cable and the power cable and you'll see a green light for the SD card reader flicker as it boots up.
When you are done, you will need to establish a connection to your Galileo board in order to deploy your code. You can do this by opening the "Galileo Watcher" app (a part of the toolset that should be running in your tray). You should see your board there and, if it is online, you can Telnet into it by right-clicking on it and selecting "Telnet Here."
This will open a Telnet connection to the Galileo board and you can log in with the password you defined above.
Now you are ready to build your first app. Open Visual Studio 2013 and select a Galileo Wiring App project.
The default project is a simple blinking app. You should be able to run it and just see a light blinking on your board.
Congratulations! You've got a Galileo board ready for Windows development.
If you have a breadboard, get started with Galileo with the Windows IoT samples here. If you have the Grove Starter Kit, stay tuned for our walk-through of working with the Grove Shield and the Galileo board.