Getting Started with Windows on Intel Galileo (IoT)
At //Build 2014 conference, Microsoft demonstrated a version of Windows running on Intel Galileo board. It was not the first time Microsoft has showcased Windows running on smaller devices. They had around 8 different versions of Windows Embedded that ran on POS terminals since Windows 3.1 release and most of the retail POS terminals, arcade games, set-up boxes and ATMs, even today, across the globe run on Windows Embedded. And what more the later versions also allowed running applications developed using .NET 3.5
So what has changed with Intel Galileo? It's the scale, licensing and availability.
Microsoft has shipped a pared-down version of Windows Embedded on Galileo (and coming soon will be a version for Raspberry PI v2) to reach out to DIYers, hardware makers and developers like you and me. Tons of opportunities lay wide open in front of us to create applications that can gather real-time analog data using sensors and transmit them for analysis.
So let's get started with configuring our Intel Galileo V2
Prerequisites, first!
Let's start with our checklist of hardware and software you would need to get started
Hardware:
- Intel Galileo V2 Board (with 12v power supply)
- microSD card with adapter – Minimum 16GB, Class 10
- Ethernet/LAN cable
- USB cable
- *Laptop with USB port and Ethernet port
-
Internet connection
*If you have an Ultrabook (like I do) and don't have an Ethernet port on your laptop, you will need a router that has an unused Ethernet port.
Software:
- Arduino IDE for Windows – Download from Intel Downloads website and extract it to C:\ drive
-
Register on Microsoft Connect site and download following executables and store them in a folder
- Imaging Script for Windows – apply-BootMedia.cmd
- Windows Image (WIM) for Embedded Devices – download here
- Galileo Watcher – MSI Installer
- Telnet on your laptop
The Intel Galileo V2 Board
The Intel Galileo V2 board comes packed in a static-resistant bag with a wide range of adapters for power adapters.
The board looks like one shown above,
- USB port to connect to PC
- Ethernet port to connect to PC or router
- 12 volt power supply
- microSD slot to load WIM
- Additional USB port
Once your board has been initialized, you can see 2 LEDs light up as shown below
Point to note is that I've not inserted my microSD card and Ethernet cable in their slots on Galileo board.
Associating Galileo to COM port on your laptop
On your Start Menu, as an administrator, type Device Manager. Navigate to Other devices > Gadget Serial v2.4 and Update Driver Software
Select the folder 'C:\arduino-1.5.3\hardware\arduino\x86\tools' to browse the drivers
This will associate a COM port (serial port) for Galileo under the Ports section in Device Manager
Loading Windows Image for Embedded devices to microSD
Connect your microSD card to your PC using a microSD adapter. Once the microSD card has been detected, format it using FAT32 (not NTFS). Let's assume the microSD has a drive letter E:
Open Command Prompt as an administrator and navigate to the directory where you downloaded all the files from Microsoft Connect website and execute following command,
apply-bootmedia.cmd -destination {WhateverYourSDCardDriveLetterIS} -image {latest WIM image} -hostname mygalileo -password admin
In my case, it was
apply-bootmedia.cmd -destination E: -image 9600.16384.x86fre.winblue_rtm_iotbuild.141114-1440_galileo_v2.wim -hostname mygalileo -password admin
The process will take some time and the imaging output will look like,
Once this is done, you can view the contents of microSD card in Windows Explorer.
An interesting point to note is that Windows OS takes less than 1GB of disk space.
You can now eject the microSD card from laptop and insert it in Galileo. You can also connect the Ethernet cable to it. The setup should appear like,
Run the MSI you downloaded from Microsoft Connect website and boot up Galileo. The boot process will take around 2 minutes and then the Galileo Watcher will detect your device
You can right click on your Galileo in Galileo Watcher and Telnet to your device. Or you can open Web Browser by right clicking on your device. My device IP is 192.168.0.110, so I can view the memory consumed by Windows by browsing the URL http://192.168.0.110/memstat
You can view the contents of microSD card by connecting to \\192.168.0.110\c$. The username should be administrator and password should be admin, unless you have changed it when applying the image
Shutting down Galileo
Well, it's always advisable to shutdown Windows safely and so it is for Galileo. You can type the standard shutdown command on telnet
shutdown /s /t 0
And that's how you can setup Galileo to run Windows.