Apple and Google won the first battle for the “post-PC” world, with Android and iOS powering virtually every handheld gadget. Microsoft Windows scarcely registers its presence on mobiles, at under 3% market share (according to comScore). But Microsoft is fighting hard for the next round, which will bring online factory machinery, security systems, climate controls, electronic door locks, and just about every other gadget into the Internet of Things (otherwise known as the IoT).
Microsoft just released Windows 10 IoT Core, a slimmed-down version of Windows 10 that runs on the $40 Raspberry Pi 2 and Intel’s $140 MinnowBoard MAX—credit card-sized computer boards that makers use to prototype connected gadgets. A version certified for Arduino (the granddaddy of hardware hacker boards) is coming, says Tony Goodhew, a program manager in Microsoft’s IoT Team.
What does this mean? With these boards, makers can build prototype-connected devices like home security systems, lighting controllers, weather-monitoring devices, or just learning projects like blinky lights controlled from a cellphone. These little hacker boards are to the connected, automated world of the future what the bare motherboards of the 1970s and ’80s were to the personal computing era that followed.
Microsoft is courting the garage developers of the connected future to build up support for its IoT platform. “We’re presenting what we have to bring to the party,” says Goodhew, “rather than trying to bring them to our party, which is what Microsoft has done in the past.” Microsoft has partnered with Arduino and the Raspberry Pi foundation and become a Maker Faire sponsor, for instance.
Microsoft supports Windows 10 IoT Core projects and sponsors contests through Hackster.io, a community for hardware hackers building connected gadgets using boards like the Raspberry Pi, gadgets like the Pebble smartwatch, and networks such as PubNub that link devices over the Internet. Hackster.io is currently running a contest for building home automation gadgets with Windows 10 IoT Core and the Raspberry Pi 2. Winners get a trip to Maker Faire New York City or Maker Faire Rome.
After basically owning the computing industry in late 1990s, Microsoft expanded clumsily into nascent gadget categories like smartphones, and their forerunners—PDAs and handheld PCs. Microsoft’s original gadget-focused OS, Windows CE, was introduced back in 1996. It was a halfhearted attempt to squeeze the Windows 95 experience onto a tiny LCD, with barely readable text and an awkwardly sized Start button.
BlackBerry, Palm, iOS, and Android—built from the beginning for mobile devices—spawned a whole new way to interact with computers and the web, while Windows limped along with incremental revisions under the names Pocket PC and Windows Mobile. By the time Microsoft did a ground-up revamp, with the release of the slick Windows Phone 7 OS in late 2010, it had no chance of catching up to Android and iOS. (Palm was nearly extinct by then, and BlackBerry was in the morbid free-fall that continues today.)
Things went much better for Windows Embedded, Microsoft’s OS for running on devices such as ATMs, point-of-sale terminals (computerized cash registers), and medical-imaging devices. Microsoft wound up owning most of these markets with CE Embedded. But it also had to contend with embedded Linux, with its legions of dedicated open-source developers. Linux runs on tons of popular consumer gadgets like Roku as well as IoT home automation devices including the Nest Learning Thermostat and Dropcam security cameras (both now owned by Google).
Microsoft’s strategy for taking over the Internet of Things is simple: Make its software easier to use.
“Core” is the key word in Windows IoT Core. Any form of Windows—whether it’s running a thermostat or a server farm—is based on the same operating system core. One mistake the company made with the old Windows Embedded, says Goodhew, was making it too customizable. Developers could add or remove parts of the operating system as they saw fit, producing the tiniest, most-efficient version for a particular circuit board, but one that wouldn’t run on other circuit boards. Apps also had to be customized for each little hamlet of Windows that programmers created. That’s the same approach Linux has taken, says Goodhew.
“We’re not going down that path (with Windows 10 IoT Core),” says Goodhew. “From a developer perspective, I write one app that will run on any device, and that same code will run on a mobile phone or on a desktop. For example, Goodhew says that a programmer was building an industrial camera prototype on a Raspberry Pi board.
Instead of having to write an app from scratch, the programmer went to the Microsoft Developer Network site and pulled down tools for implementing functions like face detection and image stabilization that had already been created for PCs and mobiles.
That’s not just something to get nerdy programmers excited. It means that new kinds of gadgets will come out faster and work the way people expect them to. Remember early ads for the iPad that boasted “You already know how to use it.”? For example, a security camera would quickly get apps, which work similarly, for watching the video feed from a (Windows) phone or PC.
As Google does with Android, Microsoft is giving away Windows 10 IoT Core for free. That goes for mega industrial corporations as well as a hacker with Arduino or Raspberry Pi boards in the garage. That’s not an act of altruism: It’s a way for Microsoft to get customers for its developer tools such as the Visual Studio service for building and debugging programs. (Windows has been free for mobile phones and smaller tablets for more than a year.)
Microsoft may or may not have a different fate with the Internet of Things than it did with mobile devices. But by working closely with even hobbyist developers and giving away software, Microsoft is certainly taking a different approach this time.