This week at Microsoft's WinHEC 2015 conference in Shenzen, Microsoft announced new details in support of the developing IoT market. Microsoft previously announced support for the Raspberry Pi 2 with a customized version of Windows 10, and they have now provided a bit more information about Windows 10 in general.

The primary information provided by Microsoft is that there will be an entirely new edition of Windows 10, "Windows 10 IoT", using a similar postfix notation as the ill-fated "Windows 8 RT". However, within Windows 10 IoT there are three classes: industry devices, mobile devices, and small devices. This could be the eventual official names of Stock Keeping Units (SKUs) for Windows 10 IoT, but Microsoft was careful not to use the SKU term yet.

All three classes of Windows 10 IoT support universal apps and drivers. This extends the deployment options of a single app from desktops, laptops, tablets, game consoles, TVs and augmented reality (Holo Lens), all the way to IoT devices. The idea of a single app running on all these targets is quite impressive if it can be done well. While one app might not need to be on every type of device, it at least implies the development experience for each target is similar therefore lowering the barrier to entry. 

Windows 10 IoT for industry devices has identical requirements to traditional 32-bit Windows 10: x86 processor, 16 GB storage and 1 GB RAM. Therefore it will be interesting to see what software tweaks are provided in Windows 10 IoT for industry devices that differentiate it from traditional Windows 10. Microsoft has not yet provided any details about this, but alludes to deeper integration with cloud services, security, and machine to machine connectivity. Microsoft mentions targeting medical devices, robotics, and other smart machine applications. From my own perspective, many of these devices already run Linux or real-time operating systems such as VxWorks so this could be an uphill battle.

Windows 10 IoT for mobile devices is a subset of functionality. It excludes the desktop shell but keeps the all modern interface introduced in Windows 8, then further reduces storage needs to 4 GB and memory to 512 MB. Microsoft also limits it to only ARM processors, which is quite surprising considering that Windows 10 for small devices works on ARM or x86 processors. Also, the overlap with Windows Phone is considerable, and considering the rumors of x86 support in Windows 10 for phones, Windows 10 IoT for mobile devices is quite an enigma at the moment.

Finally, Windows 10 IoT for small devices drops the shell entirely but maintains universal app compatibility. This might imply that there is no way to interact with the operating system while running an app, such as a kiosk experience for Point of Sale (PoS) or media center devices. Microsoft's own documentation states "To keep storage and memory costs low, this edition of Windows 10 does not include a Windows start experience or in-box apps. Instead, the device maker builds the device experience as a Windows universal app and configures the device to launch that app at boot, giving the device developer complete control over the device experience." Requirements drop down to 256 MB of RAM and 2 GB of storage. As mentioned above, x86 and ARM processors are supported.

Microsoft also announced that Windows 10 IoT for small devices will be free for makers and commercial device builders. The language used is quite specific and it appears to rule out deploying Windows 10 IoT for small devices internally within a company.

Finally, Microsoft's supplied graphic highlighting three compatible small devices includes the Raspberry Pi 2, an Intel Atom development board, and the Qualcomm DragonBoard 410c. The processors in each are ARMv7, x86, and ARMv8 respectively.

Unfortunately many questions remain. We look forward to Microsoft providing more details and evaluation units in the future.

Source: Microsoft

Comments Locked

39 Comments

View All Comments

  • Scabies - Friday, March 20, 2015 - link

    No mention of internet connected coffee machines and vacuums like when Internet of Things was first proposed, but they still won't let go of the buzzword.
  • Penti - Friday, March 20, 2015 - link

    IoT for industry devices is basically Embedded Standard or componentized semi full blown Windows license for machines/embedded applications like Windows 8.1 Embedded Standard, XP Embedded, Embedded Standard 7 et cetera before it. The SKU for small devices seams to essentially be WE8.1H but also for x86.

    Essentially no more "one Windows" than with 8.1 SKUs of WP and Windows before it. Just Windows Runtime seems too restrictive and hardly replaces the applications where WINCE was used before. It's nothing that will power small base stations or the like any how.

    Any X86 device you would want to run a modern Windows OS on is powerful enough to run full blown Windows too. ARM boards people use for DIY projects might find use of the small SKU, but it will be more difficult than running other software on it, in most cases it's not that straight forward to run standard C++ on WinRT and it's not the environment you would use for services/server applications. Look how awful VLC is to port to Windows Runtime (or Universal Apps as they now call it). Technically Win32 is still on those platforms too, not just directly usable.
  • Alexvrb - Sunday, March 22, 2015 - link

    The difficulty of porting VLC to other platforms has less to do with RunTime being "too restrictive" and more to do with their code being less-portable. In the process of porting it to other platforms, they've improved it. Also this is something a couple of guys work on in their spare time.

    A highly portable codebase will have less trouble. An old application with piles upon piles of archaic convoluted code will be more difficult to port. If you've got legacy code you can't/won't port (don't have the source or the resources), just run an x86 version with Win32.
  • Mushkins - Friday, March 20, 2015 - link

    IoT seems like a kitschy buzzword to me with little practicality to it. Why does my coffee machine or my fridge need to be connected to the internet? There's no selling point here, it's a solution looking for a problem to solve.
  • Speedfriend - Friday, March 20, 2015 - link

    Mushkins - imagine a coffee machine that switches on when your alarm goes off in the morning...
  • Creig - Friday, March 20, 2015 - link

    Mine already does. It's called a "timer". Unless your start time at work changes every other day, a coffee maker on a timer is probably going to be good enough. Don't get me wrong, I'm all for technology advances. But sometimes it gets incorporated into things that really don't need it.
  • toyotabedzrock - Friday, March 20, 2015 - link

    Timers are a pia and have to be reset if you want to use it on the weekend. Also it allows a remote notification for when cleaning is needed. Perhaps it can tell you when you phone notices you are at the store so you get stuff to clean it?

    With added sensors it could tell when you get out of bed or get in the shower to start brewing.
  • Michael Bay - Saturday, March 21, 2015 - link

    I`ll have your average dumb cofeemaker over monstrosity you describe any day of the week.
  • jeffry - Sunday, March 22, 2015 - link

    My is a 50 bucks filter coffee machine. As simple as that. And im not willing to pay for MS Software in my coffee machine ;) MS-it wont happen! ;)
  • Alexvrb - Sunday, March 22, 2015 - link

    I do believe the article indicated it would be free.

Log in

Don't have an account? Sign up now