How to install Windows 10 IoT Core on Raspberry Pi 2 in 5 minutes - also works on Win7, Win8, Linux, Mac OS
Abstract
This protip describes how to write Windows 10 IoT Core operating system image on a SD-Card, by using open source and free available tools. This shortens the installation time down to a few minutes (can be done in approx. 5), doesn't bother you to install all requirements and makes it less complicated.
Motivation
In February 2015 Microsoft announced Windows 10 IoT Core support for Raspberry Pi 2. Because of this great news, I wanted to install it on such a cheap board. But to my surprise the installation procedure described at Microsoft's Github page is very complicated and requires me to have a Windows 10 Insider Preview running (on bare metal, not a virtual one) and Visual Studio 2015. Besides the fact, that my current notebook runs Windows 8.1, it takes a remarkable amount of time, to download and install these software packages. I didn't want to - so I used a shortcut...
Dear Microsoft, why do you make it so complicated to write a disk image on a flash/SD-Card?
Please, use open standard image formats, to ease installation and reach/motivate more developers.
Write Windows 10 IoT Core image on SD-Card
Requirements
These additional tools are available under an open source license and thus free to use. If you've already played with Raspberry Pi images, its very likely the you already have them installed.
- WindowsIoTCoreRPI2BUILD.zip - Download from dev.windows.com
- Python 2.7.x or 3.x- Download from python.org
- ffu2img Download source from github.com
- Image write tool, depending on your operating system
- Windows: Win32DiskImager - Download from sourceforge.net
- Linux: dd
- Mac OS X: dd
Preparation
The Windows 10 IoT Core ZIP file contains a file named flash.ffu. This image file is compressed and digital signed. To convert it into a more common format, you will use the ffu2img
tool. Make sure you have Python installed. There exists separate files of ffu2img for Python 2.7.x and a 3.x version. Simply download and use the one which matches your environment.
Open a terminal or command line window and convert the image file like this:
C:> python ffu2img.py Flash.ffu Windows_IoT_Core_RPI2.img
This will create a WindowsIoTCoreRPI2.img_ file, which uses ca. 7.7GByte space on your disk.
Write image to SD-Card
Windows 7, Windows 8
Simply start Win32DiskImager as administrator, open the image file WindowsIoTCoreRPI2.img_
and click the [write] button.
For more details, have a look at raspberry.org/documentation/.../windows.md
Linux
Open a terminal and customize the command to fit your device's name:
$> dd bs=4M if=Windows_IoT_Core_RPI2.img of=/dev/sdx
For more details, have a look at raspberry.org/documentation/.../linux.md
Mac OS
Open a terminal and customize the command to fit your device's name:
$> sudo dd bs=1m if=Windows_IoT_Core_RPI2.img of=/dev/diskn
For more details, have a look at raspberry.org/documentation/.../mac.md
Have fun!
Written by Martin W. Kirst
Related protips
1 Response
Hi, that's very good info.
I had the same question... why it has to be so complicated. With linux you download an image, flash it and boot it. And also, there are so many unsupported devices (like sd cards). So for example my win10iot build, after I've flashed it, boots!!! But... the dispaly/screen has something wrong. It looks like the frames that should be displayed are stretched diagonally. I can see the rolling dots but to me they look like a diagonal...
Anyway, I was using the WindowsIoTImageHepler tool, I've used the command line tool (which should be identical), changed 3 sd cards. Now I'm trying your guide... but I'm giving up. It could simply be my tv/monitor that doesn't work or it's not supported (despite the fact I thought HDMI was a standard...)
Cheers