Yesterday, I got my kit with the Intel Galileo board with "Windows for IoT" and of course, as a child who has a new toy in his hands, I started to play !

The easiest thing is to follow the online documentation, accessible from the official Windows On Devices website, which describes step by step how to be "up and running" in a few minutes. My desire to do drove me to make a "mistake" that didn’t allow me to finish the procedure correctly. What happened ?

After turning on the Galileo, connecting it to the PC and browsing through the folders (both with a telnet session as "network shared"), I decided to develop the first example for the blinking LED. I opened Visual Studio 2013, selected the C++ project template for Windows for IoT, and finallty started the build without any changes but  .... here was the error !


Arduino.h file not found ? How it is possible ?  Isn’t it installed with the SDK that we have to download from the Microsoft Connect site ? No, it isn’t !

All header files with their implementations are in the Galileo C++ SDK that we can find on Nuget. For this reason, I had to manually download the package and reference it in my project. At that point, everything worked correctly !

Apparently, I was the only one with this problem and I wondered why ! All the other people who have the kit compiled the sample project without any problems, but above all, without having to manually download the Galileo C++ SDK package from Nuget.

Well it is not true ! That package is necessary but the wizard automatically downloads it when you build the project, and it seems, at that moment, my PC wasn’t connected to the Internet !

If the PC isn’t connected to the Internet, the wizard creates an empty package.config file :

   1: <?xml version=”1.0encoding=”utf-8”?>
   2: <packages>
   3: </packages>

vice versa it contains a reference to Galileo C++ SDK (Microsoft.IoT.Galileo.Arduino if your PC is able to access to Internet !

   1: <?xml version=”1.0encoding=”utf-8”?>
   2: <packages>
   3:     <package id="Microsoft.IoT.Galileo.Arduino" version="" targetFramework="Native" />
   4: </packages>

It's obvious that this package is necessary if you plan to develop Arduino-like applications (the wizard specifies "Galileo Wiring app") but not in the case of Win32 standard applications.

Well ... before starting with Windows Developer Program for IoT make sure you have your PC connected to the big network !